aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMihail Ionescu <mihail.ionescu@arm.com>2019-11-12 13:53:06 +0000
committerKyrylo Tkachov <kyrylo.tkachov@arm.com>2019-11-12 14:00:34 +0000
commitf439988037a589de3798f44e7268301adaec21a9 (patch)
tree10e4a7636ea4a4abe9791aeeddd50d15c4823e6f /opcodes/ChangeLog
parentx86: fold EsSeg into IsString (diff)
downloadbinutils-gdb-f439988037a589de3798f44e7268301adaec21a9.tar.gz
binutils-gdb-f439988037a589de3798f44e7268301adaec21a9.tar.bz2
binutils-gdb-f439988037a589de3798f44e7268301adaec21a9.zip
[gas][arm] Make .fpu reset the FPU/Coprocessor feature bits
This patch is fixes the '.fpu' behaviour. Currently, using '.fpu' resets the previously selected '.fpu' options (by overwriting them), but does not reset previous FPU options selected by other means (ie. when using '.arch_extension fp' in conjunction with '.fpu <x>', the FPU is not reset). Example: .arch armv8-a @ SET BASE .arch_extension fp @ ADD FP-ARMV8 .fpu vfpv2 @ ADD (already existing bits, does not reset) vfms.f32 s0, s1, s2 @ OK .arch armv8-a @ RESET .fpu fp-armv8 @ ADD FP-ARMV8 vfms.f32 s0, s1, s2 @ OK .fpu vfpv2 @ RESET to VFPV2 vfms.f32 s0, s1, s2 @ ERROR After the patch this becomes: .arch armv8-a @ SET BASE .arch_extension fp @ ADD FP-ARMV8 .fpu vfpv2 @ RESET TO VFPV2 vfms.f32 s0, s1, s2 @ ERROR .arch armv8-a @ RESET .fpu fp-armv8 @ ADD FP-ARMV8 vfms.f32 s0, s1, s2 @ OK .fpu vfpv2 @ RESET to VFPV2 vfms.f32 s0, s1, s2 @ ERROR gas/ChangeLog: 2019-11-11 Mihail Ionescu <mihail.ionescu@arm.com> * config/tc-arm.c (s_arm_fpu): Clear selected_cpu fpu bits. (fpu_any): Remove OBJ_ELF guards. * gas/testsuite/gas/arm/fpu-rst.s: New. * gas/testsuite/gas/arm/fpu-rst.d: New. * gas/testsuite/gas/arm/fpu-rst.l: New.
Diffstat (limited to 'opcodes/ChangeLog')
0 files changed, 0 insertions, 0 deletions