• rearnsha's avatar
    * arm.c (thumb1_output_casesi): New function. · e6ac8414
    rearnsha authored
    	* arm.h (CASE_VECTOR_PC_RELATIVE): Thumb-1 code is also relative if
    	optimizing for size or PIC.
    	(CASE_VECTOR_SHORTEN_MODE): Handle thumb-1.
    	* arm.md (UNSPEC_THUMB1_CASESI): New constant.
    	(casesi): Handle Thumb-1 when optimizing for size or PIC.
    	(thumb1_casesi_internal_pic): New expand rule.
    	(thumb1_casesi_dispatch): New pattern.
    	* aout.h (ASM_OUTPUT_ADDR_DIFF_ELT): Use shortened vectors for
    	thumb-1 mode.
    	* coff.h (JUMP_TABLES_IN_TEXT_SECTION): Thumb-1 jump tables are now
    	in the text seciton when PIC or optimizing for size.
    	* elf.h (JUMP_TABLES_IN_TEXT_SECTION): Likewise.
    	* lib1funcs.asm ([__ARM_EABI__]): Add an attribute describing stack
    	preservation properties of code.
    	(__gnu_thumb1_case_sqi, __gnu_thumb1_case_uqi): New functions.
    	(__gnu_thumb1_case_shi, __gnu_thumb1_case_uhi): New functions.
    	(__gnu_thumb1_case_si): New function.
    	* t-arm (LIB1ASMSRC): Define here.
    	(LIB1ASMFUNCS): Add some common functions.
    	* t-arm-elf (LIB1ASMSRC): Delete.
    	(LIB1ASMFUNCS): Append to existing set.
    	* t-pe (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
    	* t-strongarm-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
    	* t-symbian (LIB1ASMFUNCS): Likewise.
    	* t-vxworks (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
    	* t-wince-pe (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
    
    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148770 138bc75d-0d04-0410-961f-82ee72b054a4
    e6ac8414
elf.h 4.96 KB