diff options
Diffstat (limited to 'recipes/binutils/binutils-2.18/parse-neon-vmov.diff')
-rw-r--r-- | recipes/binutils/binutils-2.18/parse-neon-vmov.diff | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/recipes/binutils/binutils-2.18/parse-neon-vmov.diff b/recipes/binutils/binutils-2.18/parse-neon-vmov.diff new file mode 100644 index 0000000000..e14b2a70c4 --- /dev/null +++ b/recipes/binutils/binutils-2.18/parse-neon-vmov.diff @@ -0,0 +1,41 @@ +=================================================================== +RCS file: /cvs/src/src/gas/config/tc-arm.c,v +retrieving revision 1.353 +retrieving revision 1.354 +diff -u -r1.353 -r1.354 +--- src/gas/config/tc-arm.c 2008/03/27 14:12:15 1.353 ++++ src/gas/config/tc-arm.c 2008/03/28 18:13:52 1.354 +@@ -5209,16 +5209,6 @@ + inst.operands[i].present = 1; + } + } +- else if (parse_qfloat_immediate (&ptr, &inst.operands[i].imm) == SUCCESS) +- /* Case 2: VMOV<c><q>.<dt> <Qd>, #<float-imm> +- Case 3: VMOV<c><q>.<dt> <Dd>, #<float-imm> +- Case 10: VMOV.F32 <Sd>, #<imm> +- Case 11: VMOV.F64 <Dd>, #<imm> */ +- inst.operands[i].immisfloat = 1; +- else if (parse_big_immediate (&ptr, i) == SUCCESS) +- /* Case 2: VMOV<c><q>.<dt> <Qd>, #<imm> +- Case 3: VMOV<c><q>.<dt> <Dd>, #<imm> */ +- ; + else if ((val = arm_typed_reg_parse (&ptr, REG_TYPE_NSDQ, &rtype, + &optype)) != FAIL) + { +@@ -5258,6 +5248,16 @@ + inst.operands[i++].present = 1; + } + } ++ else if (parse_qfloat_immediate (&ptr, &inst.operands[i].imm) == SUCCESS) ++ /* Case 2: VMOV<c><q>.<dt> <Qd>, #<float-imm> ++ Case 3: VMOV<c><q>.<dt> <Dd>, #<float-imm> ++ Case 10: VMOV.F32 <Sd>, #<imm> ++ Case 11: VMOV.F64 <Dd>, #<imm> */ ++ inst.operands[i].immisfloat = 1; ++ else if (parse_big_immediate (&ptr, i) == SUCCESS) ++ /* Case 2: VMOV<c><q>.<dt> <Qd>, #<imm> ++ Case 3: VMOV<c><q>.<dt> <Dd>, #<imm> */ ++ ; + else + { + first_error (_("expected <Rm> or <Dm> or <Qm> operand")); |