
The two debuginfo tests go away because the relevant transforms no longer occur in this form, e.g. the "cast of alloca" transform just doesn't exist with opaque pointers.
29 lines
797 B
LLVM
29 lines
797 B
LLVM
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 2
|
|
; RUN: opt < %s -passes=instcombine -S | FileCheck %s
|
|
|
|
target datalayout = "e-p:32:32"
|
|
target triple = "i686-pc-linux-gnu"
|
|
|
|
declare void @takes_i32(i32)
|
|
declare void @takes_i32_inalloca(ptr inalloca(i32))
|
|
|
|
define void @f() {
|
|
; CHECK-LABEL: define void @f() {
|
|
; CHECK-NEXT: [[ARGS:%.*]] = alloca inalloca i32, align 4
|
|
; CHECK-NEXT: call void @takes_i32(ptr nonnull inalloca(i32) [[ARGS]])
|
|
; CHECK-NEXT: ret void
|
|
;
|
|
%args = alloca inalloca i32
|
|
call void @takes_i32(ptr inalloca(i32) %args)
|
|
ret void
|
|
}
|
|
|
|
define void @g() {
|
|
; CHECK-LABEL: define void @g() {
|
|
; CHECK-NEXT: call void @takes_i32_inalloca(i32 0)
|
|
; CHECK-NEXT: ret void
|
|
;
|
|
call void @takes_i32_inalloca(i32 0)
|
|
ret void
|
|
}
|