Fix vmov.f64 disassembly on targets where sizeof(long) != 8.
authorBenjamin Kramer <benny.kra@googlemail.com>
Fri, 17 Sep 2010 23:48:07 +0000 (23:48 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Fri, 17 Sep 2010 23:48:07 +0000 (23:48 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114240 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
test/MC/Disassembler/neon-tests.txt

index 971d64279e659c864b00d31a42c2389c652bff6b..a5494091c9f5ef1d45cc5f454f86717b2da94827 100644 (file)
@@ -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);
 }
index a3bdc262e5752a7d15f9ac70339759b374e26c43..eb9adb7b6c2f2d3a5d447919092dc661db362887 100644 (file)
@@ -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