[PATCH] D146059: [SystemZ] Allow fp/int casting into inline assembly operands
Ulrich Weigand via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 21 07:11:50 PDT 2023
uweigand added a comment.
The 128-bit logic doesn't look quite right to me. I think what should be used there is:
- "r" constraint - GPR register pair
- "f" constraint - FPR register pair if hard-float, error if soft-float
- "v" constraint - single VR if vector support enabled, error otherwise
In particular, for "f" I believe this should *not* depend on the -march level, that would be very confusing. (I'm actually not sure GCC is getting this right in all cases either.) In any case, we definitely need tests verifying this for pre-z13, z13, and z14/later.
================
Comment at: llvm/lib/Target/SystemZ/SystemZISelLowering.cpp:1111
+ else
+ weight = CW_Default;
break;
----------------
All this `CW_Default` stuff is confusing - isn't this, well, the default?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D146059/new/
https://reviews.llvm.org/D146059
More information about the llvm-commits
mailing list