[llvm-commits] [PATCH 06/11] (patch) Mips specific inline asm: constraint 'L':
Eric Christopher
echristo at apple.com
Thu Apr 26 14:41:52 PDT 2012
On Apr 12, 2012, at 1:50 PM, Jack Carter <jcarter at mips.com> wrote:
> A signed 32 bit constant in which the lower 16 bits are zero.
>
> Example:
> // Good: i_val fits the criteria
> int i_input = 0x00000400; int i_result = 0; int i_tmp = 0;
>
> int i_val = 0x00100000;
> __asm__ __volatile__(
> "add %0,%1,%3\n\t" : "=r" (i_result) : "r" (i_input), "L" (i_val), "r" (i_tmp));
>
> // Bad: llc should complain
> int i_val = 0x00100003;
> __asm__ __volatile__(
> "add %0,%1,%3\n\t" : "=r" (i_result) : "r" (i_input), "L" (i_val), "r" (i_tmp));
> ---
> lib/Target/Mips/MipsISelLowering.cpp | 11 +++++++++++
> test/CodeGen/Mips/inlineasm-cnstrnt-bad-L.ll | 13 +++++++++++++
> test/CodeGen/Mips/inlineasm_constraint.ll | 7 ++++++-
> 3 files changed, 30 insertions(+), 1 deletions(-)
> create mode 100644 test/CodeGen/Mips/inlineasm-cnstrnt-bad-L.ll
>
> <Constraint_L.patch>_______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
This is fine.
-eric
More information about the llvm-commits
mailing list