Skip to content

Commit 26bfbf2

Browse files
committed
Auto merge of #160586 - JonathanBrouwer:rollup-UKh8PSn, r=JonathanBrouwer
Rollup of 12 pull requests Successful merges: - #159014 ([rustdoc] Do not take `doc(cfg())` into account when filtering doctests) - #159029 (rustc_llvm: Emit module summaries when using -Clto=fat) - #160574 (Update rustc-perf submodule) - #154585 (treat no_mangle_generic_items as hard error instead of lint warning) - #159473 (Fix, simplify, and document doc meta finalize mode) - #157489 (Add CoerceShared field-wise reborrow WF checks) - #160532 (Add Enzyme bugfix to support rust+llvm23) - #160545 (Reorder the methods in `#[rustc_must_implement_one_of]`) - #160558 (Revert "codegen_ssa: no dbginfo for scalable vec local w/ `-O0`") - #160566 (Re-enable bool indexing assembly test for LLVM 23) - #160569 (Remove `OnDuplicate::Custom`) - #160576 ([rustdoc] Create output file after we checked that the standalone markdown file is valid)
2 parents 7608eb7 + 24a93e7 commit 26bfbf2

194 files changed

Lines changed: 3294 additions & 1597 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

compiler/rustc_attr_parsing/src/attributes/mod.rs

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -223,13 +223,6 @@ pub(crate) enum OnDuplicate {
223223

224224
/// Ignore duplicates
225225
Ignore,
226-
227-
/// Custom function called when a duplicate attribute is found.
228-
///
229-
/// - `unused` is the span of the attribute that was unused or bad because of some
230-
/// duplicate reason
231-
/// - `used` is the span of the attribute that was used in favor of the unused attribute
232-
Custom(fn(cx: &AcceptContext<'_, '_>, used: Span, unused: Span)),
233226
}
234227

235228
impl OnDuplicate {
@@ -252,7 +245,6 @@ impl OnDuplicate {
252245
});
253246
}
254247
OnDuplicate::Ignore => {}
255-
OnDuplicate::Custom(f) => f(cx, used, unused),
256248
}
257249
}
258250
}

compiler/rustc_attr_parsing/src/attributes/transparency.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,7 @@ pub(crate) struct RustcMacroTransparencyParser;
77

88
impl SingleAttributeParser for RustcMacroTransparencyParser {
99
const PATH: &[Symbol] = &[sym::rustc_macro_transparency];
10-
const ON_DUPLICATE: OnDuplicate = OnDuplicate::Custom(|cx, used, unused| {
11-
cx.dcx().span_err(vec![used, unused], "multiple macro transparency attributes");
12-
});
10+
const ON_DUPLICATE: OnDuplicate = OnDuplicate::Error;
1311
const STABILITY: AttributeStability = unstable!(rustc_attrs);
1412
const ALLOWED_TARGETS: AllowedTargets<'_> =
1513
AllowedTargets::AllowList(&[Allow(Target::MacroDef)]);

compiler/rustc_codegen_ssa/src/mir/debuginfo.rs

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use rustc_middle::middle::codegen_fn_attrs::CodegenFnAttrFlags;
1010
use rustc_middle::ty::layout::{LayoutOf, TyAndLayout};
1111
use rustc_middle::ty::{Instance, Ty};
1212
use rustc_middle::{bug, mir, ty};
13-
use rustc_session::config::{DebugInfo, OptLevel};
13+
use rustc_session::config::DebugInfo;
1414
use rustc_span::{BytePos, DUMMY_SP, Span, Symbol, hygiene, sym};
1515

1616
use super::operand::{OperandRef, OperandValue};
@@ -460,18 +460,6 @@ impl<'a, 'tcx, Bx: BuilderMethods<'a, 'tcx>> FunctionCx<'a, 'tcx, Bx> {
460460
LocalRef::UnsizedPlace(_) => return,
461461
};
462462

463-
// FIXME(arm-maintainers): LLVM uses GlobalISel with -O0 that doesn't support scalable
464-
// vectors. It normally falls back to SDAG which does support scalable vectors, but there's
465-
// a bug that means that isn't happening for debuginfo - so temporarily don't emit debuginfo
466-
// for scalable vector locals when there are no optimisations until that bug is
467-
// fixed. See <https://github.com/llvm/llvm-project/issues/204585>.
468-
if base.layout.peel_transparent_wrappers(bx).ty.is_scalable_vector()
469-
&& bx.tcx().backend_optimization_level(()) == OptLevel::No
470-
&& bx.sess().opts.debuginfo != DebugInfo::None
471-
{
472-
return;
473-
}
474-
475463
let vars = vars.iter().cloned().chain(fallback_var);
476464

477465
for var in vars {

0 commit comments

Comments
 (0)