Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Rollup of 8 pull requests #133697

Closed
wants to merge 32 commits into from

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

madsmtm and others added 30 commits November 24, 2024 01:20
Using `cc_args` panics when using `-Clinker-flavor=ld`, because the
arguments are in a form tailored for `-Clinker-flavor=gcc`.

So instead, we use `link_args` and let that wrap the arguments with the
appropriate `-Wl` or `-Xlinker` when needed.
first steps of codegen for `#[naked]` functions using `global_asm!`

configure external linkage if no linkage is explicitly set

create a `FunctionCx` and properly evaluate consts

inline attribute is no longer relevant for naked functions

the naked attribute no longer needs to be set by llvm/...

we're generating global asm now, so this attribute is meaningless for the codegen backend
correctly emit `.hidden`

this test was added in rust-lang#105193

but actually NO_COVERAGE is no longer a thing in the compiler. Sadly,
the link to the issue is broken, so I don't know what the problem was
originally, but I don't think this is relevant any more with the global
asm approach

rename test file

because it now specifically checks for directives only used by
non-macos, non-windows x86_64

add codegen tests for 4 interesting platforms

add codegen test for the `#[instruction_set]` attribute

add test for `#[link_section]`

use `tcx.codegen_fn_attrs` to get attribute info

Fix rust-lang#124375

inline const monomorphization/evaluation

getting rid of FunctionCx

mark naked functions as `InstantiatedMode::GloballyShared`

this makes sure that the function prototype is defined correctly, and we don't see LLVM complaining about a global value with invalid linkage

monomorphize type given to `SymFn`

remove hack that always emits `.globl`

monomorphize type given to `Const`

remove `linkage_directive`

make naked functions always have external linkage

mark naked functions as `#[inline(never)]`

add test file for functional generics/const/impl/trait usage of naked functions
Something about the MIR lowering for `||` ended up breaking this, but it's fixed by changing the code to use `|` instead.

I also added an assembly test to ensure it *keeps* being `adc`.
… it earlier, then some other logic causes invalid visibility for the item (exporting when it shouldn't).
- codegen tests: change `windows` to `win`
- cleanup
- fix review comments
    - better way of checking for thumb
    - get the mangled name from the codegen backend
- propagate function alignment
- fix gcc backend
- fix asan test
- check that assembler mode restored
codegen `#[naked]` functions using global asm

tracking issue: rust-lang#90957

Fixes rust-lang#124375

This implements the approach suggested in the tracking issue: use the existing global assembly infrastructure to emit the body of `#[naked]` functions. The main advantage is that we now have full control over what gets generated, and are no longer dependent on LLVM not sneakily messing with our output (inlining, adding extra instructions, etc).

I discussed this approach with `@Amanieu` and while I think the general direction is correct, there is probably a bunch of stuff that needs to change or move around here. I'll leave some inline comments on things that I'm not sure about.

Combined with rust-lang#127853, if both accepted, I think that resolves all steps from the tracking issue.

r? `@Amanieu`
…as, r=petrochenkov

Properly pass linker arguments that contain commas

When linking with the system C compiler, we sometimes want to forward certain arguments unchanged to the linker. This can be done with `-Wl,arg1,arg2` or `-Xlinker arg1 -Xlinker arg2`. `-Wl` is used when possible, since it is more compact, but it does not support commas in the argument itself - in those cases, we need to use `-Xlinker`, and that is what this PR implements.

This also fixes using sanitizers on macOS with `-Clinker-flavor=ld`, as those were previously manually using `-Wl`/`-Xlinker` (probably since the support wasn't present in the `link_args` function).

Note that there has been [a previous PR for this](rust-lang#38798), but it only implemented this in certain cases when passing `-rpath`.

r? compiler
…-preds, r=fee1-dead,lcnr

Make `adjust_fulfillment_errors` work with `HostEffectPredicate` and `const_conditions`

Greatly improves the spans for reporting unsatisfied `~const` bounds :)

r? project-const-traits or maybe `@lcnr` (if you want to deal with a diagnostics PR lmao)
…ebank

Only error raw lifetime followed by `\'` in edition 2021+

Fixes rust-lang#133479
cc rust-lang#132341

I think this fixes a purely theoretical regression since it only affects edition 2015 (who is using that?) and only in the very rare case of a raw lifetime followed immediately by a lifetime like `'r#a'r`.
…amples, r=notriddle

Do not emit `missing_doc_code_examples` rustdoc lint on module and a few other items

It doesn't make sense to expect modules to have code examples. Same goes for:

 * Trait aliases
 * Foreign items
 * Associated types and constants

Should make the use of this lint a bit nicer.

r? `@notriddle`
…lnay

Move some functions out of const_swap feature gate

- `swap_unchecked` is still unstable as a regular fn, so that feature gate can also cover its constness.
- `swap_nonoverlapping` isn't ready to be stabilized yet, so make it a different feature gate.

Part of rust-lang#83163, rust-lang#88539, rust-lang#133668
…nieu

Fix chaining `carrying_add`s

Something about the MIR lowering for `||` ended up breaking this, but it's fixed by changing the code to use `|` instead.

I also added an assembly test to ensure it *keeps* being [`adc`](https://www.felixcloutier.com/x86/adc).

cc rust-lang#85532 (comment), which noticed this.
Check let source before suggesting annotation

Make sure we don't annotate nonsense type annotations on locals that come from desugarings.

fixes rust-lang#133688
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Dec 1, 2024
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=8

@bors
Copy link
Contributor

bors commented Dec 1, 2024

📌 Commit 6f9f594 has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Dec 1, 2024
bors added a commit to rust-lang-ci/rust that referenced this pull request Dec 1, 2024
…iaskrgr

Rollup of 8 pull requests

Successful merges:

 - rust-lang#128004 (codegen `#[naked]` functions using global asm)
 - rust-lang#132974 (Properly pass linker arguments that contain commas)
 - rust-lang#133403 (Make `adjust_fulfillment_errors` work with `HostEffectPredicate` and `const_conditions`)
 - rust-lang#133482 (Only error raw lifetime followed by `\'` in edition 2021+)
 - rust-lang#133595 (Do not emit `missing_doc_code_examples` rustdoc lint on module and a few other items)
 - rust-lang#133669 (Move some functions out of const_swap feature gate)
 - rust-lang#133674 (Fix chaining `carrying_add`s)
 - rust-lang#133691 (Check let source before suggesting annotation)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors
Copy link
Contributor

bors commented Dec 1, 2024

⌛ Testing commit 6f9f594 with merge 9e4495f...

@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-nopt failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
failures:

---- [codegen] tests/codegen/naked-asan.rs stdout ----

error: verification with 'FileCheck' failed
status: exit status: 1
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/naked-asan/naked-asan.ll" "/checkout/tests/codegen/naked-asan.rs" "--check-prefix=CHECK" "--check-prefix" "NONMSVC" "--allow-unused-prefixes" "--dump-input-context" "100"
--- stderr -------------------------------
/checkout/tests/codegen/naked-asan.rs:15:11: error: CHECK: expected string not found in input
/checkout/tests/codegen/naked-asan.rs:15:11: error: CHECK: expected string not found in input
// CHECK: declare x86_intrcc void @page_fault_handler(ptr {{.*}}, i64 {{.*}}){{.*}}#[[ATTRS:[0-9]+]]
          ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/naked-asan/naked-asan.ll:1:1: note: scanning from here
; ModuleID = 'naked_asan.1b8c82b2644ff93d-cgu.0'
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/naked-asan/naked-asan.ll:37:1: note: possible intended match here
declare x86_intrcc void @page_fault_handler(ptr byval([8 x i8]) align 8, i64) unnamed_addr #1

Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/naked-asan/naked-asan.ll
Check file: /checkout/tests/codegen/naked-asan.rs


-dump-input=help explains the following input dump.
Input was:
<<<<<<
<<<<<<
            1: ; ModuleID = 'naked_asan.1b8c82b2644ff93d-cgu.0' 
check:15'0     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
            2: source_filename = "naked_asan.1b8c82b2644ff93d-cgu.0" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            4: target triple = "x86_64-unknown-linux-gnu" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
            6: module asm ".intel_syntax" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
            7: module asm ".pushsection .text.page_fault_handler,\22ax\22, @progbits" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            8: module asm ".balign 4" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~
            9: module asm ".globl page_fault_handler" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           10: module asm ".type page_fault_handler, @function" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           11: module asm "page_fault_handler:" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           12: module asm "ud2" 
check:15'0     ~~~~~~~~~~~~~~~~~
           13: module asm ".size page_fault_handler, . - page_fault_handler" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           14: module asm ".popsection" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
           15: module asm "" 
check:15'0     ~~~~~~~~~~~~~~
           16: module asm ".att_syntax" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           18: $asan.module_ctor = comdat any 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           20: @llvm.used = appending global [1 x ptr] [ptr @asan.module_ctor], section "llvm.metadata" 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           21: @___asan_globals_registered = common hidden global i64 0 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           22: @__start_asan_globals = extern_weak hidden global i64 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           23: @__stop_asan_globals = extern_weak hidden global i64 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           24: @llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 1, ptr @asan.module_ctor, ptr @asan.module_ctor }] 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
           26: ; naked_asan::caller 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~~~~~~~~~~~~~~~~~~~~~
           27: ; Function Attrs: nonlazybind sanitize_address uwtable 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           28: define void @_ZN10naked_asan6caller17he39d7433274f0022E() unnamed_addr #0 { 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~~~~~~~
           30:  %0 = alloca [8 x i8], align 8 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           31:  store i64 1, ptr %0, align 8 
           31:  store i64 1, ptr %0, align 8 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           32:  call x86_intrcc void @page_fault_handler(ptr byval([8 x i8]) align 8 %0, i64 2) #3 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           33:  ret void 
check:15'0     ~~~~~~~~~~
           34: } 
check:15'0     ~~
check:15'0     ~
check:15'0     ~
           36: ; Function Attrs: noinline nounwind nonlazybind uwtable 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           37: declare x86_intrcc void @page_fault_handler(ptr byval([8 x i8]) align 8, i64) unnamed_addr #1 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'1     ?                                                                                              possible intended match
check:15'0     ~
check:15'0     ~
           39: declare void @__asan_report_load_n(i64, i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           41: declare void @__asan_loadN(i64, i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           43: declare void @__asan_report_load1(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           45: declare void @__asan_load1(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           47: declare void @__asan_report_load2(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           49: declare void @__asan_load2(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           51: declare void @__asan_report_load4(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           53: declare void @__asan_load4(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           55: declare void @__asan_report_load8(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           57: declare void @__asan_load8(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           59: declare void @__asan_report_load16(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           61: declare void @__asan_load16(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           63: declare void @__asan_report_store_n(i64, i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           65: declare void @__asan_storeN(i64, i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           67: declare void @__asan_report_store1(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           69: declare void @__asan_store1(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           71: declare void @__asan_report_store2(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           73: declare void @__asan_store2(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           75: declare void @__asan_report_store4(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           77: declare void @__asan_store4(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           79: declare void @__asan_report_store8(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           81: declare void @__asan_store8(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           83: declare void @__asan_report_store16(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           85: declare void @__asan_store16(i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           87: declare void @__asan_report_exp_load_n(i64, i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           89: declare void @__asan_exp_loadN(i64, i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           91: declare void @__asan_report_exp_load1(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           93: declare void @__asan_exp_load1(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           95: declare void @__asan_report_exp_load2(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           97: declare void @__asan_exp_load2(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
           99: declare void @__asan_report_exp_load4(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          101: declare void @__asan_exp_load4(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          103: declare void @__asan_report_exp_load8(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          105: declare void @__asan_exp_load8(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          107: declare void @__asan_report_exp_load16(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          109: declare void @__asan_exp_load16(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          111: declare void @__asan_report_exp_store_n(i64, i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          113: declare void @__asan_exp_storeN(i64, i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          115: declare void @__asan_report_exp_store1(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          117: declare void @__asan_exp_store1(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          119: declare void @__asan_report_exp_store2(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          121: declare void @__asan_exp_store2(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          123: declare void @__asan_report_exp_store4(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          125: declare void @__asan_exp_store4(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          127: declare void @__asan_report_exp_store8(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          129: declare void @__asan_exp_store8(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          131: declare void @__asan_report_exp_store16(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          133: declare void @__asan_exp_store16(i64, i32) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          135: declare ptr @__asan_memmove(ptr, ptr, i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:15'0     ~
check:15'0     ~
          137: declare ptr @__asan_memcpy(ptr, ptr, i64) 
check:15'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            .
            .
>>>>>>
------------------------------------------

@bors
Copy link
Contributor

bors commented Dec 1, 2024

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Dec 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rollup A PR which is a rollup S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants