xref: /llvm-project/llvm/test/Transforms/InstCombine/int_sideeffect.ll (revision 4ab40eca080965c65802710e39adbb78c4ce7bde)
1; RUN: opt -S < %s -passes=instcombine | FileCheck %s
2
3declare void @llvm.sideeffect()
4
5; Store-to-load forwarding across a @llvm.sideeffect.
6
7; CHECK-LABEL: s2l
8; CHECK-NOT: load
9define float @s2l(ptr %p) {
10    store float 0.0, ptr %p
11    call void @llvm.sideeffect()
12    %t = load float, ptr %p
13    ret float %t
14}
15