diff options
| author | Amara Emerson <aemerson@apple.com> | 2017-11-30 20:06:02 +0000 |
|---|---|---|
| committer | Amara Emerson <aemerson@apple.com> | 2017-11-30 20:06:02 +0000 |
| commit | d78d65c2a4eed16b273c214d24f5d5f55ce31d52 (patch) | |
| tree | cff9262ba11c2ab5cf3994dfb4e274c3835fc767 /llvm/lib/Target/AArch64 | |
| parent | 9750f662f70de69cb7b618e4477e30d6d3adb267 (diff) | |
| download | bcm5719-llvm-d78d65c2a4eed16b273c214d24f5d5f55ce31d52.tar.gz bcm5719-llvm-d78d65c2a4eed16b273c214d24f5d5f55ce31d52.zip | |
[GlobalISel][IRTranslator] Fix crash during translation of zero sized loads/stores/args/returns.
This fixes PR35358.
rdar://35619533
Differential Revision: https://reviews.llvm.org/D40604
llvm-svn: 319465
Diffstat (limited to 'llvm/lib/Target/AArch64')
| -rw-r--r-- | llvm/lib/Target/AArch64/AArch64CallLowering.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64CallLowering.cpp b/llvm/lib/Target/AArch64/AArch64CallLowering.cpp index 5cc8881d1c1..838305858ea 100644 --- a/llvm/lib/Target/AArch64/AArch64CallLowering.cpp +++ b/llvm/lib/Target/AArch64/AArch64CallLowering.cpp @@ -259,6 +259,8 @@ bool AArch64CallLowering::lowerFormalArguments(MachineIRBuilder &MIRBuilder, SmallVector<ArgInfo, 8> SplitArgs; unsigned i = 0; for (auto &Arg : F.args()) { + if (DL.getTypeStoreSize(Arg.getType()) == 0) + continue; ArgInfo OrigArg{VRegs[i], Arg.getType()}; setArgFlags(OrigArg, i + AttributeList::FirstArgIndex, DL, F); bool Split = false; |

