[PATCH] D133327: [AArch64][GlobalISel] When lowering signext i1 parameters, don't zero-extend to s8 first.
Jessica Paquette via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 6 10:07:34 PDT 2022
paquette added inline comments.
================
Comment at: llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp:387
+ if (MRI.getType(CurVReg).getSizeInBits() == 1 &&
+ !CurArgInfo.Flags[0].isSExt() && !CurArgInfo.Flags[0].isZExt()) {
CurVReg = MIRBuilder.buildZExt(LLT::scalar(8), CurVReg).getReg(0);
----------------
should we just pull `CurArgInfo.Flags[0]` out into a variable?
================
Comment at: llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp:573
- if (!OrigArg.Flags[0].isZExt()) {
+ if (!OrigArg.Flags[0].isZExt() && !OrigArg.Flags[0].isSExt()) {
// Lower i1 argument as i8, and insert AssertZExt + Trunc later.
----------------
ditto with `OrigArg.Flags[0]`?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D133327/new/
https://reviews.llvm.org/D133327
More information about the llvm-commits
mailing list