diff options
Diffstat (limited to 'tools/cpu/hppa1.1/genoffsets.c')
-rw-r--r-- | tools/cpu/hppa1.1/genoffsets.c | 191 |
1 files changed, 0 insertions, 191 deletions
diff --git a/tools/cpu/hppa1.1/genoffsets.c b/tools/cpu/hppa1.1/genoffsets.c deleted file mode 100644 index 6563681f11..0000000000 --- a/tools/cpu/hppa1.1/genoffsets.c +++ /dev/null @@ -1,191 +0,0 @@ -/* - * @(#)genoffsets.c 1.3 - 95/03/15 - * - * - * genoffsets.c - * - * This file generates the offsets.h for the HP PA-RISC port of RTEMS. - * - * NOTE: It only prints the offset for structures actually used - * by the assembly code. - * - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - * - */ - -#include <stdio.h> - -#include <rtems/system.h> - -int main( - int argc, - char **argv -) -{ - unsigned int size; - - /* - * Print the file header - */ - -printf( - "/* offsets.h\n" - " *\n" - " * This include file contains the offsets of elements in the\n" - " * C data structures used by the assembly language code for the\n" - " * HP PA-RISC 1.1 port of RTEMS.\n" - " *\n" - " * NOTE: THIS FILE IS AUTOMATICALLY GENERATED!!!!\n" - " * DO NOT EDIT THIS BY HAND!!!!\n" - " *\n" - " * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.\n" - " * On-Line Applications Research Corporation (OAR).\n" - " * All rights assigned to U.S. Government, 1994.\n" - " *\n" - " * This material may be reproduced by or for the U.S. Government pursuant\n" - " * to the copyright license under the clause at DFARS 252.227-7013. This\n" - " * notice must appear in all copies of this file and its derivatives.\n" - " */\n" - "\n" - "#ifndef __OFFSETS_h\n" - "#define __OFFSETS_h\n" - "\n" -); - -/* - * Offsets of elements in the Context_control structure. - */ - -#define PRINT_IT( STRING, TYPE, FIELD ) \ - printf( "#define\t%s\t0x%p\t\t/* %d */\n", \ - STRING, \ - &((TYPE)0)->FIELD, \ - (int) &((TYPE)0)->FIELD ); - -#define PRINT_SIZE( STRING, item ) \ - printf( "#define\t%s\t%d\t\t/* 0x%x */\n", \ - STRING, \ - sizeof(item), \ - sizeof(item) ); - -#define PRINT_COMMENT( STRING ) \ - printf( \ - "\n" \ - "/*\n" \ - " * " STRING "\n" \ - " */\n" \ - "\n" \ - ); - - PRINT_COMMENT("Context_Control information"); - - PRINT_IT( "FLAGS_OFFSET", Context_Control *, flags ); - PRINT_IT( "R1_OFFSET", Context_Control *, gr1 ); - PRINT_IT( "R2_OFFSET", Context_Control *, gr2 ); - PRINT_IT( "R3_OFFSET", Context_Control *, gr3 ); - PRINT_IT( "R4_OFFSET", Context_Control *, gr4 ); - PRINT_IT( "R5_OFFSET", Context_Control *, gr5 ); - PRINT_IT( "R6_OFFSET", Context_Control *, gr6 ); - PRINT_IT( "R7_OFFSET", Context_Control *, gr7 ); - PRINT_IT( "R8_OFFSET", Context_Control *, gr8 ); - PRINT_IT( "R9_OFFSET", Context_Control *, gr9 ); - PRINT_IT( "R10_OFFSET", Context_Control *, gr10 ); - PRINT_IT( "R11_OFFSET", Context_Control *, gr11 ); - PRINT_IT( "R12_OFFSET", Context_Control *, gr12 ); - PRINT_IT( "R13_OFFSET", Context_Control *, gr13 ); - PRINT_IT( "R14_OFFSET", Context_Control *, gr14 ); - PRINT_IT( "R15_OFFSET", Context_Control *, gr15 ); - PRINT_IT( "R16_OFFSET", Context_Control *, gr16 ); - PRINT_IT( "R17_OFFSET", Context_Control *, gr17 ); - PRINT_IT( "R18_OFFSET", Context_Control *, gr18 ); - PRINT_IT( "R19_OFFSET", Context_Control *, gr19 ); - PRINT_IT( "R20_OFFSET", Context_Control *, gr20 ); - PRINT_IT( "R21_OFFSET", Context_Control *, gr21 ); - PRINT_IT( "R22_OFFSET", Context_Control *, gr22 ); - PRINT_IT( "R23_OFFSET", Context_Control *, gr23 ); - PRINT_IT( "R24_OFFSET", Context_Control *, gr24 ); - PRINT_IT( "R25_OFFSET", Context_Control *, gr25 ); - PRINT_IT( "R26_OFFSET", Context_Control *, gr26 ); - PRINT_IT( "R27_OFFSET", Context_Control *, gr27 ); - PRINT_IT( "R28_OFFSET", Context_Control *, gr28 ); - PRINT_IT( "R29_OFFSET", Context_Control *, gr29 ); - PRINT_IT( "R30_OFFSET", Context_Control *, sp ); - PRINT_IT( "R31_OFFSET", Context_Control *, gr31 ); - - /* - * And common aliases for the above - */ - - PRINT_COMMENT("Common aliases for above"); - - PRINT_IT( "RP_OFFSET", Context_Control *, gr2 ); - PRINT_IT( "ARG3_OFFSET", Context_Control *, gr23 ); - PRINT_IT( "ARG2_OFFSET", Context_Control *, gr24 ); - PRINT_IT( "ARG1_OFFSET", Context_Control *, gr25 ); - PRINT_IT( "ARG0_OFFSET", Context_Control *, gr26 ); - PRINT_IT( "SP_OFFSET", Context_Control *, sp ); - PRINT_IT( "DP_OFFSET", Context_Control *, gr27 ); - PRINT_IT( "RET0_OFFSET", Context_Control *, gr28 ); - PRINT_IT( "RET1_OFFSET", Context_Control *, gr29 ); - - PRINT_SIZE("CPU_CONTEXT_SIZE", Context_Control); - - PRINT_COMMENT("Context_Control_fp information"); - - PRINT_SIZE("CPU_CONTEXT_FP_SIZE", Context_Control_fp); - - /* - * And the control registers - */ - - PRINT_COMMENT("Control register portion of context"); - - PRINT_IT( "SAR_OFFSET", Context_Control *, sar ); - PRINT_IT( "IPSW_OFFSET", Context_Control *, ipsw ); - PRINT_IT( "IIR_OFFSET", Context_Control *, iir ); - PRINT_IT( "IOR_OFFSET", Context_Control *, ior ); - PRINT_IT( "ISR_OFFSET", Context_Control *, isr ); - PRINT_IT( "PCOQFRONT_OFFSET", Context_Control *, pcoqfront ); - PRINT_IT( "PCOQBACK_OFFSET", Context_Control *, pcoqback ); - PRINT_IT( "PCSQFRONT_OFFSET", Context_Control *, pcsqfront ); - PRINT_IT( "PCSQBACK_OFFSET", Context_Control *, pcsqback ); - PRINT_IT( "ITIMER_OFFSET", Context_Control *, itimer ); - - /* - * Full interrupt frame (integer + float) - */ - PRINT_COMMENT("Interrupt frame information"); - - PRINT_IT( "INTEGER_CONTEXT_OFFSET", CPU_Interrupt_frame *, Integer ); - PRINT_IT( "FP_CONTEXT_OFFSET", CPU_Interrupt_frame *, Floating_Point ); - size = sizeof( CPU_Interrupt_frame ); - - if ( size % CPU_STACK_ALIGNMENT ) - size += CPU_STACK_ALIGNMENT - (size % CPU_STACK_ALIGNMENT); - - printf( "#define\tCPU_INTERRUPT_FRAME_SIZE\t%d\t\t/* 0x%x */\n", size, size ); - -#undef PRINT_IT -#undef PRINT_SIZE -#undef PRINT_COMMENT - - /* - * Print the end of file stuff - */ - - printf( - "\n" - "#endif /* __OFFSETS_h */\n" - "\n" - "/* end of include file */\n" - ); - - return 0; -} |