diff options
Diffstat (limited to 'ld/testsuite/ld-arm')
22 files changed, 347 insertions, 0 deletions
diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp index 7df49f4..c01c795 100644 --- a/ld/testsuite/ld-arm/arm-elf.exp +++ b/ld/testsuite/ld-arm/arm-elf.exp @@ -283,6 +283,24 @@ set armeabitests { } run_ld_link_tests $armeabitests +run_dump_test "attr-merge-wchar-00" +run_dump_test "attr-merge-wchar-02" +run_dump_test "attr-merge-wchar-04" +run_dump_test "attr-merge-wchar-20" +run_dump_test "attr-merge-wchar-22" +run_dump_test "attr-merge-wchar-24" +run_dump_test "attr-merge-wchar-40" +run_dump_test "attr-merge-wchar-42" +run_dump_test "attr-merge-wchar-44" +run_dump_test "attr-merge-wchar-00-nowarn" +run_dump_test "attr-merge-wchar-02-nowarn" +run_dump_test "attr-merge-wchar-04-nowarn" +run_dump_test "attr-merge-wchar-20-nowarn" +run_dump_test "attr-merge-wchar-22-nowarn" +run_dump_test "attr-merge-wchar-24-nowarn" +run_dump_test "attr-merge-wchar-40-nowarn" +run_dump_test "attr-merge-wchar-42-nowarn" +run_dump_test "attr-merge-wchar-44-nowarn" run_dump_test "farcall-thumb-thumb" run_dump_test "farcall-thumb-thumb-pic-veneer" run_dump_test "farcall-thumb-thumb-m-pic-veneer" diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-0.s b/ld/testsuite/ld-arm/attr-merge-wchar-0.s new file mode 100644 index 0000000..ef19a88 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-0.s @@ -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" diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-00-nowarn.d b/ld/testsuite/ld-arm/attr-merge-wchar-00-nowarn.d new file mode 100644 index 0000000..e850c64 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-00-nowarn.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-00.d b/ld/testsuite/ld-arm/attr-merge-wchar-00.d new file mode 100644 index 0000000..1fcf7c0 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-00.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-02-nowarn.d b/ld/testsuite/ld-arm/attr-merge-wchar-02-nowarn.d new file mode 100644 index 0000000..f6b7a68 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-02-nowarn.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-02.d b/ld/testsuite/ld-arm/attr-merge-wchar-02.d new file mode 100644 index 0000000..dc907ee --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-02.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-04-nowarn.d b/ld/testsuite/ld-arm/attr-merge-wchar-04-nowarn.d new file mode 100644 index 0000000..b369b78 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-04-nowarn.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-04.d b/ld/testsuite/ld-arm/attr-merge-wchar-04.d new file mode 100644 index 0000000..9aa3c47 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-04.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-2.s b/ld/testsuite/ld-arm/attr-merge-wchar-2.s new file mode 100644 index 0000000..4b3b96b --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-2.s @@ -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" diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-20-nowarn.d b/ld/testsuite/ld-arm/attr-merge-wchar-20-nowarn.d new file mode 100644 index 0000000..8cfb682 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-20-nowarn.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-20.d b/ld/testsuite/ld-arm/attr-merge-wchar-20.d new file mode 100644 index 0000000..1ba47f1 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-20.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-22-nowarn.d b/ld/testsuite/ld-arm/attr-merge-wchar-22-nowarn.d new file mode 100644 index 0000000..4a3d37e --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-22-nowarn.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-22.d b/ld/testsuite/ld-arm/attr-merge-wchar-22.d new file mode 100644 index 0000000..23c0726 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-22.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-24-nowarn.d b/ld/testsuite/ld-arm/attr-merge-wchar-24-nowarn.d new file mode 100644 index 0000000..cadd7da --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-24-nowarn.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-24.d b/ld/testsuite/ld-arm/attr-merge-wchar-24.d new file mode 100644 index 0000000..46d6c66 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-24.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-4.s b/ld/testsuite/ld-arm/attr-merge-wchar-4.s new file mode 100644 index 0000000..fdd03f9 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-4.s @@ -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" diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-40-nowarn.d b/ld/testsuite/ld-arm/attr-merge-wchar-40-nowarn.d new file mode 100644 index 0000000..9d6e040 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-40-nowarn.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-40.d b/ld/testsuite/ld-arm/attr-merge-wchar-40.d new file mode 100644 index 0000000..fcf9b54 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-40.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-42-nowarn.d b/ld/testsuite/ld-arm/attr-merge-wchar-42-nowarn.d new file mode 100644 index 0000000..8dbc442 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-42-nowarn.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-42.d b/ld/testsuite/ld-arm/attr-merge-wchar-42.d new file mode 100644 index 0000000..c2aca5e --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-42.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-44-nowarn.d b/ld/testsuite/ld-arm/attr-merge-wchar-44-nowarn.d new file mode 100644 index 0000000..7566d2a --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-44-nowarn.d @@ -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 diff --git a/ld/testsuite/ld-arm/attr-merge-wchar-44.d b/ld/testsuite/ld-arm/attr-merge-wchar-44.d new file mode 100644 index 0000000..430de30 --- /dev/null +++ b/ld/testsuite/ld-arm/attr-merge-wchar-44.d @@ -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 |