From 03bcfff8b37f465143fccdcab7f5576a015984af Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Thu, 31 Aug 2023 21:19:36 +0200 Subject: [PATCH] Only apply NoAlias attribute if optimization is enabled --- src/abi.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/abi.rs b/src/abi.rs index 874ac0b087e..9f6e2f7ff10 100644 --- a/src/abi.rs +++ b/src/abi.rs @@ -3,6 +3,7 @@ use rustc_codegen_ssa::traits::{AbiBuilderMethods, BaseTypeMethods}; use rustc_data_structures::fx::FxHashSet; use rustc_middle::bug; use rustc_middle::ty::Ty; +use rustc_session::config; use rustc_target::abi::call::{ArgAttributes, CastTarget, FnAbi, PassMode, Reg, RegKind}; use crate::builder::Builder; @@ -122,7 +123,8 @@ impl<'gcc, 'tcx> FnAbiGccExt<'gcc, 'tcx> for FnAbi<'tcx, Ty<'tcx>> { #[cfg(feature = "master")] let apply_attrs = |ty: Type<'gcc>, attrs: &ArgAttributes| { - if attrs.regular.contains(rustc_target::abi::call::ArgAttribute::NoAlias) + if cx.sess().opts.optimize != config::OptLevel::No + && attrs.regular.contains(rustc_target::abi::call::ArgAttribute::NoAlias) { ty.make_restrict() } else {