Skip to content

Commit fd230ff

Browse files
committed
Auto merge of #28370 - ranma42:slow_pat_gen, r=alexcrichton
Commit 9104a90 fixed the generated files, but that change would be lost (or require additional manual intervention) if they are re-generated of if new architectures are added. cc #28273
2 parents f710aae + 9aa1289 commit fd230ff

File tree

4 files changed

+10
-1
lines changed

4 files changed

+10
-1
lines changed

src/etc/platform-intrinsics/generator.py

+3
Original file line numberDiff line numberDiff line change
@@ -737,6 +737,9 @@ def open(self, platform):
737737
use IntrinsicDef::Named;
738738
use rustc::middle::ty;
739739
740+
// The default inlining settings trigger a pathological behaviour in
741+
// LLVM, which causes makes compilation very slow. See #28273.
742+
#[inline(never)]
740743
pub fn find<'tcx>(_tcx: &ty::ctxt<'tcx>, name: &str) -> Option<Intrinsic> {{
741744
if !name.starts_with("{0}") {{ return None }}
742745
Some(match &name["{0}".len()..] {{'''.format(platform.intrinsic_prefix())

src/librustc_platform_intrinsics/aarch64.rs

+2
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ use {Intrinsic, i, i_, u, u_, f, v, v_, agg, p, void};
1717
use IntrinsicDef::Named;
1818
use rustc::middle::ty;
1919

20+
// The default inlining settings trigger a pathological behaviour in
21+
// LLVM, which causes makes compilation very slow. See #28273.
2022
#[inline(never)]
2123
pub fn find<'tcx>(_tcx: &ty::ctxt<'tcx>, name: &str) -> Option<Intrinsic> {
2224
if !name.starts_with("aarch64_v") { return None }

src/librustc_platform_intrinsics/arm.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,12 @@
1313

1414
#![allow(unused_imports)]
1515

16-
use {Intrinsic, i, i_, u, u_, f, v, agg, p};
16+
use {Intrinsic, i, i_, u, u_, f, v, v_, agg, p, void};
1717
use IntrinsicDef::Named;
1818
use rustc::middle::ty;
1919

20+
// The default inlining settings trigger a pathological behaviour in
21+
// LLVM, which causes makes compilation very slow. See #28273.
2022
#[inline(never)]
2123
pub fn find<'tcx>(_tcx: &ty::ctxt<'tcx>, name: &str) -> Option<Intrinsic> {
2224
if !name.starts_with("arm_v") { return None }

src/librustc_platform_intrinsics/x86.rs

+2
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ use {Intrinsic, i, i_, u, u_, f, v, v_, agg, p, void};
1717
use IntrinsicDef::Named;
1818
use rustc::middle::ty;
1919

20+
// The default inlining settings trigger a pathological behaviour in
21+
// LLVM, which causes makes compilation very slow. See #28273.
2022
#[inline(never)]
2123
pub fn find<'tcx>(_tcx: &ty::ctxt<'tcx>, name: &str) -> Option<Intrinsic> {
2224
if !name.starts_with("x86_mm") { return None }

0 commit comments

Comments
 (0)