This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

src bfd/bfd-in2.h bfd/elf32-arm.c bfd/libbfd.h ...


CVSROOT:	/cvs/src
Module name:	src
Branch: 	binutils-csl-2_17-branch
Changes by:	shinwell@sourceware.org	2006-06-15 15:53:11

Modified files:
	bfd            : bfd-in2.h elf32-arm.c libbfd.h libcoff.h 
	                 reloc.c 
	gas/config     : tc-arm.c 
	include/elf    : arm.h 
	ld/testsuite/ld-arm: arm-elf.exp 
Added files:
	gas/testsuite/gas/arm: group-reloc-alu-encoding-bad.d 
	                       group-reloc-alu-encoding-bad.l 
	                       group-reloc-alu-encoding-bad.s 
	                       group-reloc-alu-parsing-bad.d 
	                       group-reloc-alu-parsing-bad.l 
	                       group-reloc-alu-parsing-bad.s 
	                       group-reloc-alu.d group-reloc-alu.s 
	                       group-reloc-ldc-encoding-bad.d 
	                       group-reloc-ldc-encoding-bad.l 
	                       group-reloc-ldc-encoding-bad.s 
	                       group-reloc-ldc-parsing-bad.d 
	                       group-reloc-ldc-parsing-bad.l 
	                       group-reloc-ldc-parsing-bad.s 
	                       group-reloc-ldc.d group-reloc-ldc.s 
	                       group-reloc-ldr-encoding-bad.d 
	                       group-reloc-ldr-encoding-bad.l 
	                       group-reloc-ldr-encoding-bad.s 
	                       group-reloc-ldr-parsing-bad.d 
	                       group-reloc-ldr-parsing-bad.l 
	                       group-reloc-ldr-parsing-bad.s 
	                       group-reloc-ldr.d group-reloc-ldr.s 
	                       group-reloc-ldrs-encoding-bad.d 
	                       group-reloc-ldrs-encoding-bad.l 
	                       group-reloc-ldrs-encoding-bad.s 
	                       group-reloc-ldrs-parsing-bad.d 
	                       group-reloc-ldrs-parsing-bad.l 
	                       group-reloc-ldrs-parsing-bad.s 
	                       group-reloc-ldrs.d group-reloc-ldrs.s 
	ld/testsuite/ld-arm: group-relocs-alu-bad.d 
	                     group-relocs-alu-bad.s 
	                     group-relocs-ldc-bad.d 
	                     group-relocs-ldc-bad.s 
	                     group-relocs-ldr-bad.d 
	                     group-relocs-ldr-bad.s 
	                     group-relocs-ldrs-bad.d 
	                     group-relocs-ldrs-bad.s group-relocs.d 
	                     group-relocs.s 

Log message:
	Support for ARM "group relocations" numbers 4, and 57 through 83.
	
	* include/elf/arm.h: Correct names of R_ARM_LDC_G{0,1,2}
	to R_ARM_LDC_SB_G{0,1,2} respectively.
	
	bfd/
	* bfd-in2.h: Regenerate.
	* elf32-arm.c (R_ARM_ALU_PC_G0_NC, R_ARM_ALU_PC_G0,
	R_ARM_ALU_PC_G1_NC, R_ARM_ALU_PC_G1, R_ARM_ALU_PC_G2,
	R_ARM_LDR_PC_G1, R_ARM_LDR_PC_G2, R_ARM_LDRS_PC_G0,
	R_ARM_LDRS_PC_G1, R_ARM_LDRS_PC_G2, R_ARM_LDC_PC_G0,
	R_ARM_LDC_PC_G1, R_ARM_LDC_PC_G2, R_ARM_ALU_SB_G0_NC,
	R_ARM_ALU_SB_G0, R_ARM_ALU_SB_G1_NC, R_ARM_ALU_SB_G1,
	R_ARM_ALU_SB_G2, R_ARM_LDR_SB_G0, R_ARM_LDR_SB_G1,
	R_ARM_LDR_SB_G2, R_ARM_LDRS_SB_G0, R_ARM_LDRS_SB_G1,
	R_ARM_LDRS_SB_G2, R_ARM_LDC_SB_G0, R_ARM_LDC_SB_G1,
	R_ARM_LDC_SB_G2): New relocation types.
	(R_ARM_PC13): Rename to AAELF name R_ARM_LDR_PC_G0 and
	adjust HOWTO entry to be consistent with R_ARM_LDR_PC_G1
	and friends.
	(elf32_arm_howto_table_3): Delete; contents merged into
	elf32_arm_howto_table_2.
	(elf32_arm_howto_from_type): Adjust correspondingly.
	(elf32_arm_reloc_map): Extend with the above relocations.
	(calculate_group_reloc_mask): New function.
	(identify_add_or_sub): New function.
	(elf32_arm_final_link_relocate): Support for the above
	relocations.
	* reloc.c: Add enumeration entries for BFD_RELOC_ARM_...
	codes to correspond to the above relocations.
	
	gas/
	* config/tc-arm.c (enum parse_operand_result): New.
	(struct group_reloc_table_entry): New.
	(enum group_reloc_type): New.
	(group_reloc_table): New array.
	(find_group_reloc_table_entry): New function.
	(parse_shifter_operand_group_reloc): New function.
	(parse_address_main): New function, incorporating code
	from the old parse_address function.  To be used via...
	(parse_address): wrapper for parse_address_main; and
	(parse_address_group_reloc): new function, likewise.
	(enum operand_parse_code): New codes OP_SHG, OP_ADDRGLDR,
	OP_ADDRGLDRS, OP_ADDRGLDC.
	(parse_operands): Support for these new operand codes.
	New macro po_misc_or_fail_no_backtrack.
	(encode_arm_cp_address): Preserve group relocations.
	(insns): Modify to use the above operand codes where group
	relocations are permitted.
	(md_apply_fix): Handle the group relocations
	ALU_PC_G0_NC through LDC_SB_G2.
	(tc_gen_reloc): Likewise.
	(arm_force_relocation): Leave group relocations for the linker.
	(arm_fix_adjustable): Likewise.
	
	gas/testsuite/
	* gas/arm/group-reloc-alu.d: New test.
	* gas/arm/group-reloc-alu-encoding-bad.d: New test.
	* gas/arm/group-reloc-alu-encoding-bad.l: New test.
	* gas/arm/group-reloc-alu-encoding-bad.s: New test.
	* gas/arm/group-reloc-alu-parsing-bad.d: New test.
	* gas/arm/group-reloc-alu-parsing-bad.l: New test.
	* gas/arm/group-reloc-alu-parsing-bad.s: New test.
	* gas/arm/group-reloc-alu.s: New test.
	* gas/arm/group-reloc-ldc.d: New test.
	* gas/arm/group-reloc-ldc-encoding-bad.d: New test.
	* gas/arm/group-reloc-ldc-encoding-bad.l: New test.
	* gas/arm/group-reloc-ldc-encoding-bad.s: New test.
	* gas/arm/group-reloc-ldc-parsing-bad.d: New test.
	* gas/arm/group-reloc-ldc-parsing-bad.l: New test.
	* gas/arm/group-reloc-ldc-parsing-bad.s: New test.
	* gas/arm/group-reloc-ldc.s: New test.
	* gas/arm/group-reloc-ldr.d: New test.
	* gas/arm/group-reloc-ldr-encoding-bad.d: New test.
	* gas/arm/group-reloc-ldr-encoding-bad.l: New test.
	* gas/arm/group-reloc-ldr-encoding-bad.s: New test.
	* gas/arm/group-reloc-ldr-parsing-bad.d: New test.
	* gas/arm/group-reloc-ldr-parsing-bad.l: New test.
	* gas/arm/group-reloc-ldr-parsing-bad.s: New test.
	* gas/arm/group-reloc-ldr.s: New test.
	* gas/arm/group-reloc-ldrs.d: New test.
	* gas/arm/group-reloc-ldrs-encoding-bad.d: New test.
	* gas/arm/group-reloc-ldrs-encoding-bad.l: New test.
	* gas/arm/group-reloc-ldrs-encoding-bad.s: New test.
	* gas/arm/group-reloc-ldrs-parsing-bad.d: New test.
	* gas/arm/group-reloc-ldrs-parsing-bad.l: New test.
	* gas/arm/group-reloc-ldrs-parsing-bad.s: New test.
	* gas/arm/group-reloc-ldrs.s: New test.
	
	ld/testsuite/
	* ld-arm/group-relocs-alu-bad.d: New test.
	* ld-arm/group-relocs-alu-bad.s: New test.
	* ld-arm/group-relocs.d: New test.
	* ld-arm/group-relocs-ldc-bad.d: New test.
	* ld-arm/group-relocs-ldc-bad.s: New test.
	* ld-arm/group-relocs-ldr-bad.d: New test.
	* ld-arm/group-relocs-ldr-bad.s: New test.
	* ld-arm/group-relocs-ldrs-bad.d: New test.
	* ld-arm/group-relocs-ldrs-bad.s: New test.
	* ld-arm/group-relocs.s: New test.
	* ld-arm/arm-elf.exp: Wire in new tests.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/bfd-in2.h.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=1.384.2.2&r2=1.384.2.3
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf32-arm.c.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=1.70.2.5&r2=1.70.2.6
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/libbfd.h.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=1.175.2.1&r2=1.175.2.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/libcoff.h.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=1.43&r2=1.43.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/reloc.c.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=1.149.4.1&r2=1.149.4.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-arm.c.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=1.250.2.17&r2=1.250.2.18
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-alu-encoding-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-alu-encoding-bad.l.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-alu-encoding-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-alu-parsing-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-alu-parsing-bad.l.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-alu-parsing-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-alu.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-alu.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldc-encoding-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldc-encoding-bad.l.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldc-encoding-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldc-parsing-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldc-parsing-bad.l.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldc-parsing-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldc.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldc.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldr-encoding-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldr-encoding-bad.l.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldr-encoding-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldr-parsing-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldr-parsing-bad.l.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldr-parsing-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldr.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldr.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldrs-encoding-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldrs-encoding-bad.l.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldrs-encoding-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldrs-parsing-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldrs-parsing-bad.l.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldrs-parsing-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldrs.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/arm/group-reloc-ldrs.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/include/elf/arm.h.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=1.29&r2=1.29.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs-alu-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs-alu-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs-ldc-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs-ldc-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs-ldr-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs-ldr-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs-ldrs-bad.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs-ldrs-bad.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs.d.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/group-relocs.s.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=NONE&r2=1.1.2.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/arm-elf.exp.diff?cvsroot=src&only_with_tag=binutils-csl-2_17-branch&r1=1.11.2.3&r2=1.11.2.4


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]