================ @@ -3232,6 +3264,22 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID, return RValue::get(emitUnaryMaybeConstrainedFPBuiltin( *this, E, Intrinsic::sinh, Intrinsic::experimental_constrained_sinh)); + case Builtin::BIsincos: + case Builtin::BIsincosf: + case Builtin::BIsincosl: + case Builtin::BI__builtin_sincos: + case Builtin::BI__builtin_sincosf: + case Builtin::BI__builtin_sincosl: + // Only use the llvm.sincos.* builtin on AArch64 with optimizations. + // Currently, getting codegen that is no worse than the direct call + // requires using AA during codegen. This is not done at optlevel=none, + // and not all targets support this (AArch64 is one of the few known to). + if (!getTarget().getTriple().isAArch64() || + CGM.getCodeGenOpts().OptimizationLevel == 0) + break; ---------------- MacDue wrote:
Okay, I'd be happier landing this if I could get word from someone working on one of the larger targets that disable this to why `combiner-global-alias-analysis` is turned off. `x86_64` was where I noticed the issue, so perhaps @RKSimon? https://github.com/llvm/llvm-project/pull/114086 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits