Yes, it should be possible for the backend to select the appropriate one.

I just wasn't sure whether clang would check whether the last argument is an 
immediate or variable.

________________________________________
From: si...@atanasyan.com [si...@atanasyan.com] on behalf of Simon Atanasyan 
[satanas...@mips.com]
Sent: Monday, July 16, 2012 12:32 PM
To: Hatanaka, Akira; Benjamin Kramer
Cc: cfe-commits@cs.uiuc.edu
Subject: Re: [cfe-commits] r160308 - in /cfe/trunk: lib/CodeGen/CGBuiltin.cpp 
lib/CodeGen/CodeGenFunction.h test/CodeGen/builtins-mips-ovld.c

On Mon, Jul 16, 2012 at 11:01 PM, Benjamin Kramer <benny....@gmail.com> wrote:
> On 16.07.2012, at 20:52, Simon Atanasyan <satanas...@mips.com> wrote:
>> Author: atanasyan
>> Date: Mon Jul 16 13:52:02 2012
>> New Revision: 160308
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=160308&view=rev
>> Log:
>> MIPS: Implement __builtin_mips_shll_qb builtin function overloading.
>> This function has two versions. The first one is used for a register operand.
>> The second one is used for an immediate number.
>
> Would it make sense to do this as an optimization in the backend instead? The 
> IR optimizers can infer constants in a lot more cases, I assume the constant 
> version of the builtin only differs in performance/code size?

Akira, is it possible to select an appropriate builtin in the MIPS
backend? In other words is it acceptable if the frontend emits a
single builtin nevertheless the function's arguments and the backend
is responsible for selecting and appropriate intrinsics?

BTW Benjamin, if I send a patch for review and do not get any
objections, is it okay to commit this patch in a week? Should I
continue to ping until I get any reply?

--
Simon

_______________________________________________
cfe-commits mailing list
cfe-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to