mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-26 04:32:44 +01:00
312c986138
This reverts commit 52aeacfbf5ce5f949efe0eae029e56db171ea1f7. There isn't full agreement on a path forward yet, but there is agreement that this shouldn't land as-is. See discussion on https://reviews.llvm.org/D105338 Also reverts unreviewed "[clang] Improve `-Wnull-dereference` diag to be more in-line with reality" This reverts commit f4877c78c0fc98be47b926439bbfe33d5e1d1b6d. And all the related changes to tests: This reverts commit 9a0152799f8e4a59e0483728c9f11c8a7805616f. This reverts commit 3f7c9cc27422f7302cf5a683eeb3978e6cb84270. This reverts commit 329f8197ef59f9bd23328b52d623ba768b51dbb2. This reverts commit aa9f58cc2c48ca6cfc853a2467cd775dc7622746. This reverts commit 2df37d5ddd38091aafbb7d338660e58836f4ac80. This reverts commit a72a44181264fd83e05be958c2712cbd4560aba7.
42 lines
1.0 KiB
LLVM
42 lines
1.0 KiB
LLVM
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
|
|
; RUN: opt < %s -instcombine -S | FileCheck %s
|
|
|
|
@x = weak global i32 0
|
|
|
|
define void @self_assign_1() {
|
|
; CHECK-LABEL: @self_assign_1(
|
|
; CHECK-NEXT: entry:
|
|
; CHECK-NEXT: [[TMP:%.*]] = load volatile i32, i32* @x, align 4
|
|
; CHECK-NEXT: store volatile i32 [[TMP]], i32* @x, align 4
|
|
; CHECK-NEXT: br label [[RETURN:%.*]]
|
|
; CHECK: return:
|
|
; CHECK-NEXT: ret void
|
|
;
|
|
entry:
|
|
%tmp = load volatile i32, i32* @x
|
|
store volatile i32 %tmp, i32* @x
|
|
br label %return
|
|
|
|
return:
|
|
ret void
|
|
}
|
|
|
|
define void @volatile_store_before_unreachable(i1 %c, i8* %p) {
|
|
; CHECK-LABEL: @volatile_store_before_unreachable(
|
|
; CHECK-NEXT: br i1 [[C:%.*]], label [[TRUE:%.*]], label [[FALSE:%.*]]
|
|
; CHECK: true:
|
|
; CHECK-NEXT: store volatile i8 0, i8* [[P:%.*]], align 1
|
|
; CHECK-NEXT: unreachable
|
|
; CHECK: false:
|
|
; CHECK-NEXT: ret void
|
|
;
|
|
br i1 %c, label %true, label %false
|
|
|
|
true:
|
|
store volatile i8 0, i8* %p
|
|
unreachable
|
|
|
|
false:
|
|
ret void
|
|
}
|