[cfe-commits] [PATCH] MIPS built-in function overloading

Simon Atanasyan satanasyan at mips.com
Sun Jul 8 12:10:20 PDT 2012


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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: clang-builtins-ovld.patch
Type: application/octet-stream
Size: 1898 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120708/7b9c1b40/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm-builtins-ovld.patch
Type: application/octet-stream
Size: 771 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120708/7b9c1b40/attachment-0001.obj>


More information about the cfe-commits mailing list