xref: /llvm-project/llvm/test/Transforms/GlobalOpt/large-int-crash.ll (revision d586bd5ca231a6022f439d4c6e43cfeeb53eb1d6)
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2; RUN: opt < %s -passes=globalopt -S | FileCheck %s
3
4@X = internal global i128 0
5
6define void @foo() {
7; CHECK-LABEL: @foo(
8; CHECK-NEXT:    [[T0_B:%.*]] = load i1, ptr @X
9; CHECK-NEXT:    [[T0:%.*]] = select i1 [[T0_B]], i128 18446744073709551616, i128 0
10; CHECK-NEXT:    ret void
11;
12  %t0 = load i128, ptr @X, align 8
13  ret void
14}
15
16define void @store() {
17; CHECK-LABEL: @store(
18; CHECK-NEXT:    store i1 true, ptr @X
19; CHECK-NEXT:    ret void
20;
21  store i128 18446744073709551616, ptr @X, align 8
22  ret void
23}
24