Browse Source
* bfd-in.h (bfd_elf32_arm_set_target_relocs): Add new parameter. * bfd-in2.h: Regenerate. * elf32-arm.c (struct elf_arm_obj_tdata): Add field no_wchar_size_warning. (bfd_elf32_arm_set_target_relocs): Add new parameter no_wchar_warn. (elf32_arm_merge_eabi_attributes): Give a warning, not an error, for conflicting wchar_t attributes. Do not warn if --no-wchar-size-warning. Make diagnostic text more specific. ld: * ld.texinfo (--no-wchar-size-warning): Document new ARM option. * emultempl/armelf.em (no_wchar_size_warning): New. (arm_elf_create_output_section_statements): Pass no_wchar_size_warning to arm_elf_create_output_section_statements. (OPTION_NO_WCHAR_SIZE_WARNING): New. (PARSE_AND_LIST_LONGOPTS): Add no-wchar-size-warning. (PARSE_AND_LIST_OPTIONS): List --no-wchar-size-warning. (PARSE_AND_LIST_ARGS_CASES): Handle --no-wchar-size-warning. ld/testsuite: * ld-arm/attr-merge-wchar-0.s,ld-arm/attr-merge-wchar-2.s, ld-arm/attr-merge-wchar-4.s, ld-arm/attr-merge-wchar-00-nowarn.d, ld-arm/attr-merge-wchar-00.d, ld-arm/attr-merge-wchar-02-nowarn.d, ld-arm/attr-merge-wchar-02.d, ld-arm/attr-merge-wchar-04-nowarn.d, ld-arm/attr-merge-wchar-04.d, ld-arm/attr-merge-wchar-20-nowarn.d, ld-arm/attr-merge-wchar-20.d, ld-arm/attr-merge-wchar-22-nowarn.d, ld-arm/attr-merge-wchar-22.d, ld-arm/attr-merge-wchar-24-nowarn.d, ld-arm/attr-merge-wchar-24.d, ld-arm/attr-merge-wchar-40-nowarn.d, ld-arm/attr-merge-wchar-40.d, ld-arm/attr-merge-wchar-42-nowarn.d, ld-arm/attr-merge-wchar-42.d, ld-arm/attr-merge-wchar-44-nowarn.d, ld-arm/attr-merge-wchar-44.d: New. * ld-arm/arm-elf.exp: Run new tests.binutils-arc-20080908-branch
30 changed files with 416 additions and 7 deletions
@ -0,0 +1,11 @@ |
|||
.cpu arm7tdmi |
|||
.fpu softvfp |
|||
.eabi_attribute 20, 1 |
|||
.eabi_attribute 21, 1 |
|||
.eabi_attribute 23, 3 |
|||
.eabi_attribute 24, 1 |
|||
.eabi_attribute 25, 1 |
|||
.eabi_attribute 26, 1 |
|||
.eabi_attribute 30, 6 |
|||
.eabi_attribute 18, 0 |
|||
.file "attr-merge-wchar-0.s" |
|||
@ -0,0 +1,17 @@ |
|||
#source: attr-merge-wchar-0.s |
|||
#source: attr-merge-wchar-0.s |
|||
#as: |
|||
#ld: -r --no-wchar-size-warning |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,17 @@ |
|||
#source: attr-merge-wchar-0.s |
|||
#source: attr-merge-wchar-0.s |
|||
#as: |
|||
#ld: -r |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-0.s |
|||
#source: attr-merge-wchar-2.s |
|||
#as: |
|||
#ld: -r --no-wchar-size-warning |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 2 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-0.s |
|||
#source: attr-merge-wchar-2.s |
|||
#as: |
|||
#ld: -r |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 2 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-0.s |
|||
#source: attr-merge-wchar-4.s |
|||
#as: |
|||
#ld: -r --no-wchar-size-warning |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 4 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-0.s |
|||
#source: attr-merge-wchar-4.s |
|||
#as: |
|||
#ld: -r |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 4 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,11 @@ |
|||
.cpu arm7tdmi |
|||
.fpu softvfp |
|||
.eabi_attribute 20, 1 |
|||
.eabi_attribute 21, 1 |
|||
.eabi_attribute 23, 3 |
|||
.eabi_attribute 24, 1 |
|||
.eabi_attribute 25, 1 |
|||
.eabi_attribute 26, 1 |
|||
.eabi_attribute 30, 6 |
|||
.eabi_attribute 18, 2 |
|||
.file "attr-merge-wchar-2.s" |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-2.s |
|||
#source: attr-merge-wchar-0.s |
|||
#as: |
|||
#ld: -r --no-wchar-size-warning |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 2 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-2.s |
|||
#source: attr-merge-wchar-0.s |
|||
#as: |
|||
#ld: -r |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 2 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-2.s |
|||
#source: attr-merge-wchar-2.s |
|||
#as: |
|||
#ld: -r --no-wchar-size-warning |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 2 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-2.s |
|||
#source: attr-merge-wchar-2.s |
|||
#as: |
|||
#ld: -r |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 2 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-2.s |
|||
#source: attr-merge-wchar-4.s |
|||
#as: |
|||
#ld: -r --no-wchar-size-warning |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 2 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,5 @@ |
|||
#source: attr-merge-wchar-2.s |
|||
#source: attr-merge-wchar-4.s |
|||
#as: |
|||
#ld: -r |
|||
#warning: warning: .* uses 4-byte wchar_t yet the output is to use 2-byte wchar_t; use of wchar_t values across objects may fail |
|||
@ -0,0 +1,11 @@ |
|||
.cpu arm7tdmi |
|||
.fpu softvfp |
|||
.eabi_attribute 20, 1 |
|||
.eabi_attribute 21, 1 |
|||
.eabi_attribute 23, 3 |
|||
.eabi_attribute 24, 1 |
|||
.eabi_attribute 25, 1 |
|||
.eabi_attribute 26, 1 |
|||
.eabi_attribute 30, 6 |
|||
.eabi_attribute 18, 4 |
|||
.file "attr-merge-wchar-4.s" |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-4.s |
|||
#source: attr-merge-wchar-0.s |
|||
#as: |
|||
#ld: -r --no-wchar-size-warning |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 4 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-4.s |
|||
#source: attr-merge-wchar-0.s |
|||
#as: |
|||
#ld: -r |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 4 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-4.s |
|||
#source: attr-merge-wchar-2.s |
|||
#as: |
|||
#ld: -r --no-wchar-size-warning |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 4 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,5 @@ |
|||
#source: attr-merge-wchar-4.s |
|||
#source: attr-merge-wchar-2.s |
|||
#as: |
|||
#ld: -r |
|||
#warning: warning: .* uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-4.s |
|||
#source: attr-merge-wchar-4.s |
|||
#as: |
|||
#ld: -r --no-wchar-size-warning |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 4 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
@ -0,0 +1,18 @@ |
|||
#source: attr-merge-wchar-4.s |
|||
#source: attr-merge-wchar-4.s |
|||
#as: |
|||
#ld: -r |
|||
#readelf: -A |
|||
|
|||
Attribute Section: aeabi |
|||
File Attributes |
|||
Tag_CPU_name: "ARM7TDMI" |
|||
Tag_CPU_arch: v4T |
|||
Tag_ABI_PCS_wchar_t: 4 |
|||
Tag_ABI_FP_denormal: Needed |
|||
Tag_ABI_FP_exceptions: Needed |
|||
Tag_ABI_FP_number_model: IEEE 754 |
|||
Tag_ABI_align8_needed: Yes |
|||
Tag_ABI_align8_preserved: Yes, except leaf SP |
|||
Tag_ABI_enum_size: small |
|||
Tag_ABI_optimization_goals: Aggressive Debug |
|||
Loading…
Reference in new issue