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

Enable frame pointers by default #114323

Closed
wants to merge 1 commit into from

Conversation

saethlin
Copy link
Member

@saethlin saethlin commented Aug 1, 2023

r? @ghost

@saethlin saethlin added the S-experimental Status: Ongoing experiment that does not require reviewing and won't be merged in its current state. label Aug 1, 2023
@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. labels Aug 1, 2023
@rust-log-analyzer
Copy link
Collaborator

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

Click to see the possible cause of the failure (guessed by this bot)
##[group]Run git config --global core.autocrlf false
git config --global core.autocrlf false
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
  lfs: false
  submodules: false
  set-safe-directory: true
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/setup-environment.sh
src/ci/scripts/setup-environment.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/should-skip-this.sh
src/ci/scripts/should-skip-this.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/verify-channel.sh
src/ci/scripts/verify-channel.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/collect-cpu-stats.sh
src/ci/scripts/collect-cpu-stats.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/install-sccache.sh
src/ci/scripts/install-sccache.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/select-xcode.sh
src/ci/scripts/select-xcode.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/install-clang.sh
src/ci/scripts/install-clang.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/install-wix.sh
src/ci/scripts/install-wix.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/disable-git-crlf-conversion.sh
src/ci/scripts/disable-git-crlf-conversion.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/install-msys2.sh
src/ci/scripts/install-msys2.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/install-mingw.sh
src/ci/scripts/install-mingw.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/install-ninja.sh
src/ci/scripts/install-ninja.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/enable-docker-ipv6.sh
src/ci/scripts/enable-docker-ipv6.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/disable-git-crlf-conversion.sh
src/ci/scripts/disable-git-crlf-conversion.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/verify-line-endings.sh
src/ci/scripts/verify-line-endings.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-15
##[endgroup]
##[group]Run src/ci/scripts/verify-backported-commits.sh
src/ci/scripts/verify-backported-commits.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/verify-stable-version-number.sh
src/ci/scripts/verify-stable-version-number.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/run-build-from-ci.sh
src/ci/scripts/run-build-from-ci.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: 7e7d471943976adf535654195e0ca5f56f5e76b7
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Testing stage2 compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu)

running 504 tests
ii................i.i...ii............i....i...i.................iii............i.i.....  88/504
.......i......................ii.................i..iFi.i.F.F.......i.....i............. 176/504
....................i...ii..i.i....iiiiiiii...i.ii..............ii.i.................... 352/504
........ii........................ii.ii.iiiiii..i...............i....i....i..iii........ 440/504
..i......i.......................iiiiiiiiiiii...................


failures:

---- [codegen] tests/codegen/frame-pointer.rs#aarch64-apple stdout ----

error in revision `aarch64-apple`: verification with 'FileCheck' failed
status: exit status: 1
command: "/usr/lib/llvm-15/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.aarch64-apple/frame-pointer.ll" "/checkout/tests/codegen/frame-pointer.rs" "--allow-unused-prefixes" "--check-prefixes" "CHECK,NONMSVC,aarch64-apple" "--dump-input-context" "100"
--- stderr -------------------------------
/checkout/tests/codegen/frame-pointer.rs:34:24: error: aarch64-apple-SAME: expected string not found in input
/checkout/tests/codegen/frame-pointer.rs:34:24: error: aarch64-apple-SAME: expected string not found in input
// aarch64-apple-SAME: {{.*}}"frame-pointer"="non-leaf"
                       ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.aarch64-apple/frame-pointer.ll:12:18: note: scanning from here
Build completed unsuccessfully in 0:11:02
attributes #0 = { uwtable "frame-pointer"="all" "target-cpu"="apple-m1" }
                 ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.aarch64-apple/frame-pointer.ll:12:23: note: possible intended match here
attributes #0 = { uwtable "frame-pointer"="all" "target-cpu"="apple-m1" }

Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.aarch64-apple/frame-pointer.ll
Check file: /checkout/tests/codegen/frame-pointer.rs


-dump-input=help explains the following input dump.
Input was:
<<<<<<
<<<<<<
           1: ; ModuleID = 'frame_pointer.f9df635a20c30980-cgu.0' 
           2: source_filename = "frame_pointer.f9df635a20c30980-cgu.0" 
           3: target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" 
           4: target triple = "arm64-apple-macosx11.0.0" 
           5:  
           6: ; Function Attrs: uwtable 
           7: define i32 @peach(i32 %x) unnamed_addr #0 { 
           8: start: 
           9:  ret i32 %x 
          10: } 
          11:  
          12: attributes #0 = { uwtable "frame-pointer"="all" "target-cpu"="apple-m1" } 
same:34'0                      X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
same:34'1                           ?                                                    possible intended match
          13:  
same:34'0     ~
          14: !llvm.module.flags = !{!0} 
same:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
          15: !llvm.ident = !{!1} 
same:34'0     ~~~~~~~~~~~~~~~~~~~~
          16:  
same:34'0     ~
          17: !0 = !{i32 7, !"PIC Level", i32 2} 
same:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          18: !1 = !{!"rustc version 1.73.0-nightly (07cf669c2 2023-08-01)"} 
same:34'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
------------------------------------------


---- [codegen] tests/codegen/frame-pointer.rs#aarch64-linux stdout ----
---- [codegen] tests/codegen/frame-pointer.rs#aarch64-linux stdout ----

error in revision `aarch64-linux`: verification with 'FileCheck' failed
status: exit status: 1
command: "/usr/lib/llvm-15/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.aarch64-linux/frame-pointer.ll" "/checkout/tests/codegen/frame-pointer.rs" "--allow-unused-prefixes" "--check-prefixes" "CHECK,NONMSVC,aarch64-linux" "--dump-input-context" "100"
--- stderr -------------------------------
/checkout/tests/codegen/frame-pointer.rs:31:23: error: CHECK-NOT: excluded string found in input
/checkout/tests/codegen/frame-pointer.rs:31:23: error: CHECK-NOT: excluded string found in input
// aarch64-linux-NOT: {{.*}}"frame-pointer"{{.*}}
                      ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.aarch64-linux/frame-pointer.ll:12:18: note: found here
attributes #0 = { uwtable "frame-pointer"="all" "target-cpu"="generic" "target-features"="+v8a,+outline-atomics" }

Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.aarch64-linux/frame-pointer.ll
Check file: /checkout/tests/codegen/frame-pointer.rs


-dump-input=help explains the following input dump.
Input was:
<<<<<<
<<<<<<
        1: ; ModuleID = 'frame_pointer.f9df635a20c30980-cgu.0' 
        2: source_filename = "frame_pointer.f9df635a20c30980-cgu.0" 
        3: target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" 
        4: target triple = "aarch64-unknown-linux-gnu" 
        5:  
        6: ; Function Attrs: uwtable 
        7: define i32 @peach(i32 %x) unnamed_addr #0 { 
        8: start: 
        9:  ret i32 %x 
       10: } 
       11:  
       12: attributes #0 = { uwtable "frame-pointer"="all" "target-cpu"="generic" "target-features"="+v8a,+outline-atomics" } 
not:31                      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   error: no match expected
       13:  
       14: !llvm.module.flags = !{!0} 
       15: !llvm.ident = !{!1} 
       16:  
       17: !0 = !{i32 7, !"PIC Level", i32 2} 
       18: !1 = !{!"rustc version 1.73.0-nightly (07cf669c2 2023-08-01)"} 
------------------------------------------


---- [codegen] tests/codegen/frame-pointer.rs#x64-linux stdout ----
---- [codegen] tests/codegen/frame-pointer.rs#x64-linux stdout ----

error in revision `x64-linux`: verification with 'FileCheck' failed
status: exit status: 1
command: "/usr/lib/llvm-15/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.x64-linux/frame-pointer.ll" "/checkout/tests/codegen/frame-pointer.rs" "--allow-unused-prefixes" "--check-prefixes" "CHECK,NONMSVC,x64-linux" "--dump-input-context" "100"
--- stderr -------------------------------
/checkout/tests/codegen/frame-pointer.rs:30:19: error: CHECK-NOT: excluded string found in input
/checkout/tests/codegen/frame-pointer.rs:30:19: error: CHECK-NOT: excluded string found in input
// x64-linux-NOT: {{.*}}"frame-pointer"{{.*}}
                  ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.x64-linux/frame-pointer.ll:12:18: note: found here
attributes #0 = { nonlazybind uwtable "frame-pointer"="all" "probe-stack"="__rust_probestack" "target-cpu"="x86-64" }


Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen/frame-pointer.x64-linux/frame-pointer.ll


-dump-input=help explains the following input dump.
Input was:
<<<<<<
<<<<<<
        1: ; ModuleID = 'frame_pointer.f9df635a20c30980-cgu.0' 
        2: source_filename = "frame_pointer.f9df635a20c30980-cgu.0" 
        3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" 
        4: target triple = "x86_64-unknown-linux-gnu" 
        5:  
        6: ; Function Attrs: nonlazybind uwtable 
        7: define i32 @peach(i32 %x) unnamed_addr #0 { 
        8: start: 
        9:  ret i32 %x 
       10: } 
       11:  
       12: attributes #0 = { nonlazybind uwtable "frame-pointer"="all" "probe-stack"="__rust_probestack" "target-cpu"="x86-64" } 
not:30                      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   error: no match expected
       13:  
       14: !llvm.module.flags = !{!0, !1} 
       15: !llvm.ident = !{!2} 
       16:  
       17: !0 = !{i32 7, !"PIC Level", i32 2} 
       18: !1 = !{i32 2, !"RtLibUseGOT", i32 1} 
       19: !2 = !{!"rustc version 1.73.0-nightly (07cf669c2 2023-08-01)"} 
------------------------------------------



@saethlin
Copy link
Member Author

saethlin commented Aug 1, 2023

@bors try @rust-timer queue

@rust-timer

This comment has been minimized.

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Aug 1, 2023
@bors
Copy link
Contributor

bors commented Aug 1, 2023

⌛ Trying commit 7e7d471 with merge 3237c24c10e37ac049d5d151a4f45f419940ad30...

@bors
Copy link
Contributor

bors commented Aug 1, 2023

☀️ Try build successful - checks-actions
Build commit: 3237c24c10e37ac049d5d151a4f45f419940ad30 (3237c24c10e37ac049d5d151a4f45f419940ad30)

@rust-timer

This comment has been minimized.

@Noratrieb
Copy link
Member

Noratrieb commented Aug 1, 2023

note #107689 which tries to enable them on just rustc builds and already has (imo good) perf results

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (3237c24c10e37ac049d5d151a4f45f419940ad30): comparison URL.

Overall result: ❌ regressions - ACTION NEEDED

Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR may lead to changes in compiler perf.

Next Steps: If you can justify the regressions found in this try perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please fix the regressions and do another perf run. If the next run shows neutral or positive results, the label will be automatically removed.

@bors rollup=never
@rustbot label: -S-waiting-on-perf +perf-regression

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
1.8% [0.3%, 3.6%] 229
Regressions ❌
(secondary)
1.7% [0.4%, 3.1%] 210
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 1.8% [0.3%, 3.6%] 229

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
1.6% [1.2%, 2.0%] 2
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.4% [-3.5%, -3.3%] 2
All ❌✅ (primary) - - 0

Cycles

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
1.8% [0.7%, 2.8%] 8
Regressions ❌
(secondary)
1.9% [1.3%, 3.1%] 7
Improvements ✅
(primary)
-0.8% [-0.8%, -0.8%] 1
Improvements ✅
(secondary)
-4.2% [-6.0%, -1.2%] 4
All ❌✅ (primary) 1.5% [-0.8%, 2.8%] 9

Binary size

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
0.0% [0.0%, 0.2%] 50
Regressions ❌
(secondary)
0.2% [0.0%, 0.7%] 26
Improvements ✅
(primary)
-0.3% [-0.7%, -0.0%] 70
Improvements ✅
(secondary)
-0.5% [-2.5%, -0.0%] 79
All ❌✅ (primary) -0.1% [-0.7%, 0.2%] 120

Bootstrap: missing data

@rustbot rustbot added perf-regression Performance regression. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Aug 2, 2023
@Noratrieb
Copy link
Member

instructions are pretty bad but cycles look pretty good.

@bjorn3
Copy link
Member

bjorn3 commented Aug 3, 2023

Maybe try with only omitting in leaf functions?

@saethlin
Copy link
Member Author

saethlin commented Aug 3, 2023

Haha I don't have a lot of time to work on this either but possibly just enough.

@saethlin saethlin removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Sep 3, 2023
@saethlin saethlin closed this Sep 20, 2023
@saethlin saethlin deleted the force-frame-pointers branch December 14, 2023 23:49
bors added a commit to rust-lang-ci/rust that referenced this pull request May 4, 2024
…nters, r=<try>

[DO NOT MERGE] Experimentally force non-leaf frame pointers

Continuing the experiment of rust-lang#114323

r? `@ghost`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
perf-regression Performance regression. S-experimental Status: Ongoing experiment that does not require reviewing and won't be merged in its current state. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants