[llvm-commits] [llvm] r164453 - /llvm/trunk/lib/Target/X86/X86InstrCompiler.td
Michael Liao
michael.liao at intel.com
Sat Sep 22 14:10:11 PDT 2012
On Sat, 2012-09-22 at 12:11 -0700, Chandler Carruth wrote:
> On Fri, Sep 21, 2012 at 10:41 PM, Michael Liao
> <michael.liao at intel.com> wrote:
> Author: hliao
> Date: Sat Sep 22 00:41:15 2012
> New Revision: 164453
>
> URL: http://llvm.org/viewvc/llvm-project?rev=164453&view=rev
> Log:
> Fix 16-bit atomic inst encoding and keep pseudo-inst starting
> with '#'
>
>
> If there are fixes here, there should be a test case update or
> addition.
Done in r164465. Thanks for reminder.
Yours
- Michael
>
>
>
> Modified:
> llvm/trunk/lib/Target/X86/X86InstrCompiler.td
>
> Modified: llvm/trunk/lib/Target/X86/X86InstrCompiler.td
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86InstrCompiler.td?rev=164453&r1=164452&r2=164453&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86InstrCompiler.td (original)
> +++ llvm/trunk/lib/Target/X86/X86InstrCompiler.td Sat Sep 22
> 00:41:15 2012
> @@ -538,17 +538,17 @@
> !strconcat(mnemonic, "6432 PSEUDO!"),
> []>;
> }
>
> -defm ATOMAND : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMAND">;
> -defm ATOMOR : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMOR">;
> -defm ATOMXOR : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMXOR">;
> -defm ATOMNAND : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMNAND">;
> -defm ATOMADD : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMADD">;
> -defm ATOMSUB : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMSUB">;
> -defm ATOMMAX : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMMAX">;
> -defm ATOMMIN : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMMIN">;
> -defm ATOMUMAX : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMUMAX">;
> -defm ATOMUMIN : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMUMIN">;
> -defm ATOMSWAP : PSEUDO_ATOMIC_LOAD_BINOP6432<"ATOMSWAP">;
> +defm ATOMAND : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMAND">;
> +defm ATOMOR : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMOR">;
> +defm ATOMXOR : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMXOR">;
> +defm ATOMNAND : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMNAND">;
> +defm ATOMADD : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMADD">;
> +defm ATOMSUB : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMSUB">;
> +defm ATOMMAX : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMMAX">;
> +defm ATOMMIN : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMMIN">;
> +defm ATOMUMAX : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMUMAX">;
> +defm ATOMUMIN : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMUMIN">;
> +defm ATOMSWAP : PSEUDO_ATOMIC_LOAD_BINOP6432<"#ATOMSWAP">;
>
> //===----------------------------------------------------------------------===//
> // Normal-Instructions-With-Lock-Prefix Pseudo Instructions
> @@ -615,7 +615,7 @@
> ImmMod, (outs), (ins i16mem :$dst,
> i16imm :$src2),
> !strconcat("lock\n\t", mnemonic,
> "{w}\t",
> "{$src2, $dst|$dst,
> $src2}"),
> - [], IIC_ALU_MEM>, LOCK;
> + [], IIC_ALU_MEM>, OpSize, LOCK;
>
> def #NAME#32mi : Ii32<{ImmOpc{7}, ImmOpc{6}, ImmOpc{5},
> ImmOpc{4},
> ImmOpc{3}, ImmOpc{2}, ImmOpc{1}, 1 },
> @@ -636,7 +636,7 @@
> ImmMod, (outs), (ins i16mem :$dst,
> i16i8imm :$src2),
> !strconcat("lock\n\t", mnemonic,
> "{w}\t",
> "{$src2, $dst|$dst,
> $src2}"),
> - [], IIC_ALU_MEM>, LOCK;
> + [], IIC_ALU_MEM>, OpSize, LOCK;
> def #NAME#32mi8 : Ii8<{ImmOpc8{7}, ImmOpc8{6}, ImmOpc8{5},
> ImmOpc8{4},
> ImmOpc8{3}, ImmOpc8{2}, ImmOpc8{1},
> 1 },
> ImmMod, (outs), (ins i32mem :$dst,
> i32i8imm :$src2),
> @@ -756,7 +756,7 @@
> [(set
> GR16:$dst,
> (!cast<PatFrag>(frag # "_16") addr:
> $ptr, GR16:$val))],
> - itin>;
> + itin>, OpSize;
> def #NAME#32 : I<opc, MRMSrcMem, (outs GR32:$dst),
> (ins GR32:$val, i32mem:$ptr),
> !strconcat("lock\n\t", mnemonic,
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
>
More information about the llvm-commits
mailing list