[all-commits] [llvm/llvm-project] 290184: Revert "[AArch64] Remove superfluous sxtw in peeph...
Krasimir Georgiev via All-commits
all-commits at lists.llvm.org
Wed Jul 17 03:56:56 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 290184880ae22541738e280397da33fe515e4c86
https://github.com/llvm/llvm-project/commit/290184880ae22541738e280397da33fe515e4c86
Author: Krasimir Georgiev <krasimir at google.com>
Date: 2024-07-17 (Wed, 17 Jul 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
R llvm/lib/Target/AArch64/peephole-sxtw.mir
M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
Log Message:
-----------
Revert "[AArch64] Remove superfluous sxtw in peephole opt (#96293)"
This reverts commit 7f2a5dfe35f8bbaca2819644c7aa844f938befd6.
It appears that after this, llc segfaults on the following code:
```
target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32"
target triple = "aarch64--linux-eabi"
define i32 @f(i32 %0) {
entry:
%1 = sext i32 %0 to i64
br label %A
A:
%2 = trunc i64 %1 to i32
%a69.us = sub i32 0, %2
%a69.us.fr = freeze i32 %a69.us
%3 = zext i32 %a69.us.fr to i64
br label %B
B:
%t = icmp eq i64 0, %3
br i1 %t, label %A, label %B
}
```
assert.h assertion failed at .../llvm/lib/CodeGen/LiveVariables.cpp:159 in void llvm::LiveVariables::HandleVirtRegUse(Register, MachineBasicBlock *, MachineInstr &): MRI->getVRegDef(Reg) && "Register use before def!"
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list