1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/test/Transforms/EarlyCSE/int_sideeffect.ll
Bryan Chan a99283db0a [EarlyCSE] Verify hash code in regression tests
As discussed in D86843, -earlycse-debug-hash should be used in more regression
tests to catch inconsistency between the hashing and the equivalence check.

Differential Revision: https://reviews.llvm.org/D86863
2020-09-04 10:40:35 -04:00

28 lines
618 B
LLVM

; RUN: opt -S < %s -early-cse -earlycse-debug-hash | FileCheck %s
declare void @llvm.sideeffect()
; Store-to-load forwarding across a @llvm.sideeffect.
; CHECK-LABEL: s2l
; CHECK-NOT: load
define float @s2l(float* %p) {
store float 0.0, float* %p
call void @llvm.sideeffect()
%t = load float, float* %p
ret float %t
}
; Redundant load elimination across a @llvm.sideeffect.
; CHECK-LABEL: rle
; CHECK: load
; CHECK-NOT: load
define float @rle(float* %p) {
%r = load float, float* %p
call void @llvm.sideeffect()
%s = load float, float* %p
%t = fadd float %r, %s
ret float %t
}