Remove support for zext and sext constant expressions. All places creating them have been removed beforehand, so this just removes the APIs and uses of these constant expressions in tests. There is some additional cleanup that can be done on top of this, e.g. we can remove the ZExtInst vs ZExtOperator footgun. This is part of https://discourse.llvm.org/t/rfc-remove-most-constant-expressions/63179.
15 lines
569 B
LLVM
15 lines
569 B
LLVM
; RUN: opt < %s -passes='instcombine<no-verify-fixpoint>' -S -debug 2>&1 | FileCheck %s
|
|
; REQUIRES: asserts
|
|
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32"
|
|
|
|
; This test disables fixpoint verification, because that would cause a second
|
|
; iteration for verification.
|
|
|
|
define i32 @a() nounwind readnone {
|
|
entry:
|
|
%ext = zext i1 icmp eq (i32 0, i32 ptrtoint (ptr @a to i32)) to i32
|
|
ret i32 %ext
|
|
}
|
|
; CHECK: INSTCOMBINE ITERATION #1
|
|
; CHECK-NOT: INSTCOMBINE ITERATION #2
|