[PATCH] D42962: [ARM] Allow 64- and 128-bit types with 't' inline asm constraint

Pablo Barrio via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 7 06:46:10 PST 2018


pbarrio added inline comments.


================
Comment at: lib/Target/ARM/ARMISelLowering.cpp:13462
         break;
       if (VT == MVT::f32)
         return RCPair(0U, &ARM::SPR_8RegClass);
----------------
olista01 wrote:
> It looks like we also differ from GCC in what types we accept for 32-bit operands. GCC seems to accept integers for the 'w', 'x' and 't' constraints, but for some reason we only do that for 't'. Maybe these should also be switched to using getSizeInBits for 32-bit operands?
> 
> Using integer operands in S/D registers is useful because of the float<->int conversion instructions.
For reference: i32 type with 't' was added here: https://reviews.llvm.org/D40137


Repository:
  rL LLVM

https://reviews.llvm.org/D42962





More information about the llvm-commits mailing list