mirror of
https://github.com/RPCS3/llvm.git
synced 2026-07-19 15:13:49 -04:00
69d43aeac4
It's possible that some function can load and store the same variable using the same constant expression: store %Derived* @foo, %Derived** bitcast (%Base** @bar to %Derived**) %42 = load %Derived*, %Derived** bitcast (%Base** @bar to %Derived**) The bitcast expression was mistakenly cached while processing loads, and never examined later when processing store. This caused @bar to be mistakenly treated as read-only variable. See load-store-caching.ll. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365188 91177308-0d34-0410-b5e6-96231b3b80d8
13 lines
254 B
LLVM
13 lines
254 B
LLVM
; Check summary versioning
|
|
; RUN: opt -module-summary %s -o - | llvm-bcanalyzer -dump | FileCheck %s
|
|
|
|
; CHECK: <GLOBALVAL_SUMMARY_BLOCK
|
|
; CHECK: <VERSION op0=7/>
|
|
|
|
|
|
|
|
; Need a function for the summary to be populated.
|
|
define void @foo() {
|
|
ret void
|
|
}
|