[clang] [Clang] Add __builtin_bswapg (PR #162433)
Nikolas Klauser via cfe-commits
cfe-commits at lists.llvm.org
Sun Oct 19 08:08:44 PDT 2025
================
@@ -3622,6 +3622,15 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
Builder.CreateArithmeticFence(ArgValue, ConvertType(ArgType)));
return RValue::get(ArgValue);
}
+ case Builtin::BI__builtin_bswapg: {
+ Value *ArgValue = EmitScalarExpr(E->getArg(0));
+ llvm::IntegerType *IntTy = cast<llvm::IntegerType>(ArgValue->getType());
+ assert(IntTy && "LLVM's __builtin_bswapg only supports integer variants");
----------------
philnik777 wrote:
It sounds reasonable, but the llvm intrinsic has the constraint on 16 bits. I don't think we should block introducing the builtin on extending the llvm intrinsic.
https://github.com/llvm/llvm-project/pull/162433
More information about the cfe-commits
mailing list