qiucf added inline comments.
================ Comment at: clang/lib/Sema/SemaChecking.cpp:3334 return SemaBuiltinConstantArgRange(TheCall, 3, 0, 7); + case PPC::BI__builtin_ppc_tw: { + return SemaBuiltinConstantArgRange(TheCall, 2, 1, 31); ---------------- Unnecessary brace? ================ Comment at: llvm/include/llvm/IR/IntrinsicsPowerPC.td:115 + // xl compatibility + def int_ppc_tdw ---------------- This comment is little bit confusing: we don't have `__builtin_ppc_fcfid` in XL. XL has `__fcfid` instead. What we're doing is to follow Clang's convention to name them `__builtin_xxx` and defines macros to maintain XL compatibility. ================ Comment at: llvm/lib/Target/PowerPC/PPCInstr64Bit.td:1735 +// trap, trapd +def : Pat<(int_ppc_trapd g8rc:$A), + (TDI 24, $A, 0)>; ---------------- Where is `trap`? ================ Comment at: llvm/test/CodeGen/PowerPC/builtins-ppc-xlcompat-conversionfunc.c:1 +// RUN: clang -mcpu=pwr9 -O2 -c -S %s -o - | FileCheck %s + ---------------- Please separate front-end and back-end tests. IIRC, LLVM doesn't accept end-to-end tests yet. So it's better to put //'C to IR'// test in Clang's codegen, and put //'IR to Assembly'// test in llvm/PowerPC's codegen. Use `%clang_cc1` in front-end tests. And also test in back-end if `VSX` is not available. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D103668/new/ https://reviews.llvm.org/D103668 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits