Hi, Some MIPS built-in functions have two versions. The first one is used for a register operand. The second one is used for a immediate number. For example, the second argument of __builtin_mips_shll_qb can be a register operand or a constant expression.
v4i8 __builtin_mips_shll_qb(v4i8, imm0_7) v4i8 __builtin_mips_shll_qb(v4i8, i32) Attached patches implement MIPS built-in function overloading (now for __builtin_mips_shll_qb only). EmitMipsBuiltinExpr routine checks whether the second argument is a constant expression and use corresponding DSP instruction to emit call expression. Could you please review the patches? Is this approach for built-in function overloading correct? -- Simon
clang-builtins-ovld.patch
Description: Binary data
llvm-builtins-ovld.patch
Description: Binary data
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
