================ @@ -269,6 +270,22 @@ RValue CIRGenFunction::emitBuiltinExpr(const GlobalDecl &gd, unsigned builtinID, case Builtin::BI__builtin_rotateright32: case Builtin::BI__builtin_rotateright64: return emitRotate(e, /*isRotateLeft=*/false); + + case Builtin::BI__builtin_trap: { + builder.create<cir::TrapOp>(loc); + // Note that cir.trap is a terminator so we need to start a new dummy block + // to preserve the builder's insertion point. + builder.createBlock(builder.getBlock()->getParent()); ---------------- xlauko wrote:
Exercise this in tests, so that additional block is really required. Same for unreachable below. https://github.com/llvm/llvm-project/pull/151363 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits