cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

elf.h (1947B)


      1/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
      2/*
      3 * OpenRISC Linux
      4 *
      5 * Linux architectural port borrowing liberally from similar works of
      6 * others.  All original copyrights apply as per the original source
      7 * declaration.
      8 *
      9 * OpenRISC implementation:
     10 * Copyright (C) 2003 Matjaz Breskvar <phoenix@bsemi.com>
     11 * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se>
     12 * et al.
     13 *
     14 * This program is free software; you can redistribute it and/or modify
     15 * it under the terms of the GNU General Public License as published by
     16 * the Free Software Foundation; either version 2 of the License, or
     17 * (at your option) any later version.
     18 */
     19
     20#ifndef _UAPI__ASM_OPENRISC_ELF_H
     21#define _UAPI__ASM_OPENRISC_ELF_H
     22
     23/*
     24 * This files is partially exported to userspace.  This allows us to keep
     25 * the ELF bits in one place which should assist in keeping the kernel and
     26 * userspace in sync.
     27 */
     28
     29/*
     30 * ELF register definitions..
     31 */
     32
     33/* for struct user_regs_struct definition */
     34#include <asm/ptrace.h>
     35
     36/* The OR1K relocation types... not all relevant for module loader */
     37#define R_OR32_NONE	0
     38#define R_OR32_32	1
     39#define R_OR32_16	2
     40#define R_OR32_8	3
     41#define R_OR32_CONST	4
     42#define R_OR32_CONSTH	5
     43#define R_OR32_JUMPTARG	6
     44#define R_OR32_VTINHERIT 7
     45#define R_OR32_VTENTRY	8
     46
     47typedef unsigned long elf_greg_t;
     48
     49/*
     50 * Note that NGREG is defined to ELF_NGREG in include/linux/elfcore.h, and is
     51 * thus exposed to user-space.
     52 */
     53#define ELF_NGREG (sizeof(struct user_regs_struct) / sizeof(elf_greg_t))
     54typedef elf_greg_t elf_gregset_t[ELF_NGREG];
     55
     56/* A placeholder; OR32 does not have fp support yes, so no fp regs for now.  */
     57typedef unsigned long elf_fpregset_t;
     58
     59/* EM_OPENRISC is defined in linux/elf-em.h */
     60#define EM_OR32         0x8472
     61
     62/*
     63 * These are used to set parameters in the core dumps.
     64 */
     65#define ELF_ARCH	EM_OR32
     66#define ELF_CLASS	ELFCLASS32
     67#define ELF_DATA	ELFDATA2MSB
     68
     69#endif /* _UAPI__ASM_OPENRISC_ELF_H */