mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-26 12:20:42 +00:00
Re-apply r113679, which was reverted in r113720, which added a paid of new instcombine transforms
to expose greater opportunities for store narrowing in codegen. This patch fixes a potential infinite loop in instcombine caused by one of the introduced transforms being overly aggressive. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113763 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -15,22 +15,6 @@ entry:
|
||||
ret i32 %add
|
||||
}
|
||||
|
||||
define float @fp_ops(float %a, float %b) nounwind {
|
||||
entry:
|
||||
%a.addr = alloca float, align 4
|
||||
%b.addr = alloca float, align 4
|
||||
store float %a, float* %a.addr
|
||||
store float %b, float* %b.addr
|
||||
%tmp = load float* %a.addr
|
||||
%tmp1 = load float* %b.addr
|
||||
%mul = fmul float %tmp, %tmp1
|
||||
%tmp2 = load float* %b.addr
|
||||
%tmp3 = load float* %a.addr
|
||||
%mul2 = fmul float %tmp2, %tmp3
|
||||
%add = fadd float %mul, %mul2
|
||||
ret float %mul
|
||||
}
|
||||
|
||||
define i32* @foo(i32* %p, i32* %q, i32** %z) nounwind {
|
||||
entry:
|
||||
%r = load i32* %p
|
||||
|
||||
Reference in New Issue
Block a user