+2015-07-09 Catherine Moore <clm@codesourcery.com>
+
+ * readelf.c (print_mips_fp_abi_value): Handle
+ Val_GNU_MIPS_ABI_FP_NAN2008.
+
2015-06-26 Matthew Fortune <matthew.fortune@imgtec.com>
* readelf.c (get_mips_dynamic_type): Handle DT_MIPS_RLD_MAP_REL.
case Val_GNU_MIPS_ABI_FP_64A:
printf (_("Hard float compat (32-bit CPU, 64-bit FPU)\n"));
break;
+ case Val_GNU_MIPS_ABI_FP_NAN2008:
+ printf (_("NaN 2008 compatibility\n"));
+ break;
default:
printf ("??? (%d)\n", val);
break;
+2015-07-09 Catherine Moore <clm@codesourcery.com>
+
+ * config/tc-mips.c (check_fpabi): Handle
+ VAL_GNU_MIPS_ABI_FP_NAN2008.
+
2015-07-08 Ciro Santilli <ciro.santilli@gmail.com>
* doc/as.texinfo: Clarify case requirements for pseudo ops.
Tag_GNU_MIPS_ABI_FP, fpabi);
break;
+ case Val_GNU_MIPS_ABI_FP_NAN2008:
+ /* Silently ignore compatibility value. */
+ break;
+
default:
as_warn (_(".gnu_attribute %d,%d is not a recognized"
" floating-point ABI"), Tag_GNU_MIPS_ABI_FP, fpabi);
+2015-07-09 Catherine Moore <clm@codesourcery.com>
+
+ * elf/mips/mips.h (Val_GNU_MIPS_ABI_FP_NAN2008): New.
+
2015-07-08 Pitchumani Sivanupandi <pitchumani.s@atmel.com>
* elf/avr.h: Add new 32 bit PC relative relocation.
/* Using -mips32r2 -mfp64 -mno-odd-spreg. */
Val_GNU_MIPS_ABI_FP_64A = 7,
+ /* This is reserved for backward-compatibility with an earlier
+ implementation of the MIPS NaN2008 functionality. */
+ Val_GNU_MIPS_ABI_FP_NAN2008 = 8,
+
/* Values defined for Tag_GNU_MIPS_ABI_MSA. */
/* Not tagged or not using any ABIs affected by the differences. */
+2015-07-09 Catherine Moore <clm@codesourcery.com>
+
+ * ld-mips-elf/attr-gnu-4-08.d: Update expected output.
+ * ld-mips-elf/attr-gnu-4-09.d: New.
+ * ld-mips-elf/attr-gnu-4-19.d: New.
+ * ld-mips-elf/attr-gnu-4-29.d: New.
+ * ld-mips-elf/attr-gnu-4-39.d: New.
+ * ld-mips-elf/attr-gnu-4-49.d: New.
+ * ld-mips-elf/attr-gnu-4-59.d: New.
+ * ld-mips-elf/attr-gnu-4-69.d: New.
+ * ld-mips-elf/attr-gnu-4-79.d: New.
+ * ld-mips-elf/attr-gnu-4-89.d: New.
+ * ld-mips-elf/attr-gnu-4-9.s: New.
+ * ld-mips-elf/mips-elf.exp: Run new tests.
+
2015-07-08 Pitchumani Sivanupandi <pitchumani.s@atmel.com>
* ld-avr/gc-section-debugline.d: New test.
Attribute Section: gnu
File Attributes
- Tag_GNU_MIPS_ABI_FP: \?\?\? \(8\)
+ Tag_GNU_MIPS_ABI_FP: NaN 2008 compatibility
MIPS ABI Flags Version: 0
GPR size: .*
CPR1 size: .*
CPR2 size: 0
-FP ABI: \?\?\? \(8\)
+FP ABI: NaN 2008 compatibility
ISA Extension: .*
ASEs:
None
--- /dev/null
+#source: attr-gnu-4-0.s
+#source: attr-gnu-4-9.s -W
+#ld: -r
+#readelf: -A
+
+Attribute Section: gnu
+File Attributes
+ Tag_GNU_MIPS_ABI_FP: \?\?\? \(9\)
+
+MIPS ABI Flags Version: 0
+
+ISA: MIPS.*
+GPR size: .*
+CPR1 size: .*
+CPR2 size: 0
+FP ABI: \?\?\? \(9\)
+ISA Extension: .*
+ASEs:
+ None
+FLAGS 1: 0000000.
+FLAGS 2: 00000000
--- /dev/null
+#source: attr-gnu-4-1.s
+#source: attr-gnu-4-9.s -W
+#ld: -r
+#readelf: -A
+#warning: Warning: .* uses -mdouble-float \(set by .*\), .* uses unknown floating point ABI 9
+
+Attribute Section: gnu
+File Attributes
+ Tag_GNU_MIPS_ABI_FP: Hard float \(double precision\)
+
+MIPS ABI Flags Version: 0
+
+ISA: MIPS.*
+GPR size: .*
+CPR1 size: .*
+CPR2 size: 0
+FP ABI: Hard float \(double precision\)
+ISA Extension: .*
+ASEs:
+ None
+FLAGS 1: 0000000.
+FLAGS 2: 00000000
--- /dev/null
+#source: attr-gnu-4-2.s
+#source: attr-gnu-4-9.s -W
+#ld: -r
+#readelf: -A
+#warning: Warning: .* uses -msingle-float \(set by .*\), .* uses unknown floating point ABI 9
+
+Attribute Section: gnu
+File Attributes
+ Tag_GNU_MIPS_ABI_FP: Hard float \(single precision\)
+
+MIPS ABI Flags Version: 0
+
+ISA: MIPS.*
+GPR size: .*
+CPR1 size: .*
+CPR2 size: 0
+FP ABI: Hard float \(single precision\)
+ISA Extension: .*
+ASEs:
+ None
+FLAGS 1: 0000000.
+FLAGS 2: 00000000
--- /dev/null
+#source: attr-gnu-4-3.s
+#source: attr-gnu-4-9.s -W
+#ld: -r
+#readelf: -A
+#warning: Warning: .* uses -msoft-float \(set by .*\), .* uses unknown floating point ABI 9
+
+Attribute Section: gnu
+File Attributes
+ Tag_GNU_MIPS_ABI_FP: Soft float
+
+MIPS ABI Flags Version: 0
+
+ISA: MIPS.*
+GPR size: .*
+CPR1 size: .*
+CPR2 size: 0
+FP ABI: Soft float
+ISA Extension: .*
+ASEs:
+ None
+FLAGS 1: 0000000.
+FLAGS 2: 00000000
--- /dev/null
+#source: attr-gnu-4-4.s -W
+#source: attr-gnu-4-9.s -W
+#ld: -r
+#error: \A[^\n]*: Warning: .* uses -mips32r2 -mfp64 \(12 callee-saved\) \(set by .*\), .* uses unknown floating point ABI 9\n
+#error: [^\n]*: [^\n]* linking -mfp32 module with previous -mfp64 modules\n
+#error: [^\n]*: failed to merge target specific data of file [^\n]*\.o\Z
--- /dev/null
+#source: attr-gnu-4-5.s
+#source: attr-gnu-4-9.s -W -mips32r2
+#ld: -r
+#warning: Warning: .* uses -mfpxx \(set by .*\), .* uses unknown floating point ABI 9
--- /dev/null
+#source: attr-gnu-4-6.s
+#source: attr-gnu-4-9.s -W -mips32r2
+#ld: -r
+#warning: Warning: .* uses -mgp32 -mfp64 \(set by .*\), .* uses unknown floating point ABI 9
--- /dev/null
+#source: attr-gnu-4-7.s
+#source: attr-gnu-4-9.s -W -mips32r2
+#ld: -r
+#warning: Warning: .* uses -mgp32 -mfp64 -mno-odd-spreg \(set by .*\), .* uses unknown floating point ABI 9
--- /dev/null
+#source: attr-gnu-4-8.s
+#source: attr-gnu-4-9.s -W -mips32r2
+#ld: -r
+#warning: Warning: .* uses -mgp32 -mfp64 -mno-odd-spreg \(set by .*\), .* uses unknown floating point ABI 8
--- /dev/null
+.gnu_attribute 4,9
}
}
foreach firstfpabi [list 4 5 6 7 ] {
- foreach secondfpabi [list 0 1 2 3 8] {
+ foreach secondfpabi [list 0 1 2 3 8 9] {
run_dump_test "attr-gnu-4-${firstfpabi}${secondfpabi}" $o32flagslist
}
}
foreach firstfpabi [list 0 1 2 3 ] {
- foreach secondfpabi [list 0 1 2 3 8] {
+ foreach secondfpabi [list 0 1 2 3 8 9] {
run_dump_test "attr-gnu-4-${firstfpabi}${secondfpabi}"
}
}