Skip to content

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

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Closed
krasimirgg opened this issue Jan 17, 2022 · 1 comment · Fixed by #93004

Comments

@krasimirgg
Copy link
Contributor

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

@nikic
Copy link
Contributor

nikic commented Jan 17, 2022

I expect this is a matter of adjusting the test expectation to no longer include a bitcast.

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Jan 18, 2022
@bors bors closed this as completed in 853feb6 Jan 18, 2022
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants