summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2010-09-17 23:48:07 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2010-09-17 23:48:07 +0000
commitde636ca9a8c0738c26e4df2ea115ffaa54e1fde4 (patch)
treed09c6c7d86c12eb64d6d31c25d47c405e58bf59e
parentd632616f8695c51f3f028e95c6fd05cc48a7a020 (diff)
downloadbcm5719-llvm-de636ca9a8c0738c26e4df2ea115ffaa54e1fde4.tar.gz
bcm5719-llvm-de636ca9a8c0738c26e4df2ea115ffaa54e1fde4.zip
Fix vmov.f64 disassembly on targets where sizeof(long) != 8.
llvm-svn: 114240
-rw-r--r--llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp4
-rw-r--r--llvm/test/MC/Disassembler/neon-tests.txt3
2 files changed, 5 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp b/llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
index 971d64279e6..a5494091c9f 100644
--- a/llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
+++ b/llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
@@ -1588,9 +1588,9 @@ static APInt VFPExpandImm(unsigned char byte, unsigned N) {
Result = (uint64_t)slice(byte, 7, 7) << 63 |
(uint64_t)slice(byte, 5, 0) << 48;
if (bit6)
- Result |= 0xffL << 54;
+ Result |= 0xffULL << 54;
else
- Result |= 0x1L << 62;
+ Result |= 0x1ULL << 62;
}
return APInt(N, Result);
}
diff --git a/llvm/test/MC/Disassembler/neon-tests.txt b/llvm/test/MC/Disassembler/neon-tests.txt
index a3bdc262e57..eb9adb7b6c2 100644
--- a/llvm/test/MC/Disassembler/neon-tests.txt
+++ b/llvm/test/MC/Disassembler/neon-tests.txt
@@ -56,3 +56,6 @@
# CHECK: vmov.f32 s0, #1.328125e-01
0x01 0x0a 0xb4 0xee
+
+# CHECK: vmov.f64 d0, #5.000000e-01
+0x00 0x0b 0xb6 0xee
OpenPOWER on IntegriCloud