Skip to content

src/test/codegen/thread-local.rs will need an update for LLVM 14 after LLVM commit 4796b4ae7bccc7b75a26b666fbd554c49b274404 #93003

Closed
@krasimirgg

Description

@krasimirgg

It looks like we will need an update to src/test/codegen/thread-local.rs for llvm/llvm-project@4796b4a:
Experimental Rust + HEAD LLVM CI: https://buildkite.com/llvm-project/rust-llvm-integrate-prototype/builds/7674#f06ecb09-6dbc-4c96-a6f7-5e27298aba0c:

stderr:
  | ------------------------------------------
  | /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/src/test/codegen/thread-local.rs:22:12: error: CHECK: expected string not found in input
  | // CHECK: %0 = load i32, i32* bitcast ({{.*}} [[TLS]] to i32*)
  | ^
  | /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/build/x86_64-unknown-linux-gnu/test/codegen/thread-local/thread-local.ll:13:16: note: scanning from here
  | define i32 @get() unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
  | ^
  | /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/build/x86_64-unknown-linux-gnu/test/codegen/thread-local/thread-local.ll:13:16: note: with "TLS" equal to "@_ZN12thread_local1A7__getit3VAL17h67524106f022e33dE\\.0"
  | define i32 @get() unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
  | ^
  | /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/build/x86_64-unknown-linux-gnu/test/codegen/thread-local/thread-local.ll:15:2: note: possible intended match here
  | %0 = load i32, i32* @_ZN12thread_local1A7__getit3VAL17h67524106f022e33dE.0, align 4
  | ^
  | /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/src/test/codegen/thread-local.rs:30:12: error: CHECK: expected string not found in input
  | // CHECK: store i32 %0, i32* bitcast ({{.*}} [[TLS]] to i32*)
  | ^
  | /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/build/x86_64-unknown-linux-gnu/test/codegen/thread-local/thread-local.ll:20:17: note: scanning from here
  | define void @set(i32 %0) unnamed_addr #1 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
  | ^
  | /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/build/x86_64-unknown-linux-gnu/test/codegen/thread-local/thread-local.ll:20:17: note: with "TLS" equal to "@_ZN12thread_local1A7__getit3VAL17h67524106f022e33dE\\.0"
  | define void @set(i32 %0) unnamed_addr #1 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
  | ^
  | /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/build/x86_64-unknown-linux-gnu/test/codegen/thread-local/thread-local.ll:22:2: note: possible intended match here
  | store i32 %0, i32* @_ZN12thread_local1A7__getit3VAL17h67524106f022e33dE.0, align 4, !alias.scope !2, !noalias !5
  | ^
  |  
  | Input file: /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/build/x86_64-unknown-linux-gnu/test/codegen/thread-local/thread-local.ll
  | Check file: /var/lib/buildkite-agent/builds/rust-llvm-integrate/llvm-project/rust-llvm-integrate-prototype/src/test/codegen/thread-local.rs
  |  
  | -dump-input=help explains the following input dump.
  |  
  | Input was:
  | <<<<<<
  | .
  | .
  | .
  | 8:
  | 9: @_ZN16thread_local_aux1A7__getit3VAL17hc69ea66037fee9ebE = external thread_local local_unnamed_addr global i64
  | 10: @_ZN12thread_local1A7__getit3VAL17h67524106f022e33dE.0 = internal thread_local unnamed_addr global i32 1, align 4
  | 11:
  | 12: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind readonly uwtable willreturn
  | 13: define i32 @get() unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
  | check:22'0                    X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
  | check:22'1                                                                                                                                                                                  with "TLS" equal to "@_ZN12thread_local1A7__getit3VAL17h67524106f022e33dE\\.0"
  | 14: start:
  | check:22'0     ~~~~~~~
  | 15:  %0 = load i32, i32* @_ZN12thread_local1A7__getit3VAL17h67524106f022e33dE.0, align 4
  | check:22'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  | check:22'2      ?                                                                                    possible intended match
  | 16:  ret i32 %0
  | check:22'0     ~~~~~~~~~~~~
  | 17: }
  | check:22'0     ~~
  | 18:
  | check:22'0     ~
  | 19: ; Function Attrs: mustprogress nofree nosync nounwind nonlazybind uwtable willreturn
  | check:22'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  | 20: define void @set(i32 %0) unnamed_addr #1 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
  | check:22'0     ~~~~~~~~~~~~~~~~
  | check:30'0                     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
  | check:30'1                                                                                                                                                                                         with "TLS" equal to "@_ZN12thread_local1A7__getit3VAL17h67524106f022e33dE\\.0"
  | 21: start:
  | check:30'0     ~~~~~~~
  | 22:  store i32 %0, i32* @_ZN12thread_local1A7__getit3VAL17h67524106f022e33dE.0, align 4, !alias.scope !2, !noalias !5
  | check:30'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  | check:30'2      ?                                                                                                                 possible intended match
  | 23:  ret void
  | check:30'0     ~~~~~~~~~~
  | 24: }
  | check:30'0     ~~
  | 25:
  | check:30'0     ~
  | 26: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind readonly uwtable willreturn
  | check:30'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  | 27: define i64 @get_aux() unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
  | check:30'0     ~~~~~~~~~~~~~~~~~~~
  | .
  | .
  | .
  | >>>>>>
  |  
  | ------------------------------------------
  |  
  |  
  |  
  | failures:
  | [codegen] codegen/thread-local.rs
  |  
  | test result: FAILED. 272 passed; 1 failed; 41 ignored; 0 measured; 0 filtered out; finished in 4.37s

@nikic could you please take a look

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions