[llvm-commits] [PATCH 2/6] revise/enhance atomic primitive code generation

Michael Liao michael.liao at intel.com
Sat Aug 18 21:12:33 PDT 2012


Rebased again onto r162180 and resolved all conflicts with recent
changes. Really appreciate your time to review this patch.

Yours
- Michael

On Wed, 2012-08-15 at 12:41 -0700, Michael Liao wrote:
> rebased onto r161979 and resubmitted for review.
> 
> Yours
> - Michael
> 
> On Mon, 2012-07-30 at 17:22 -0700, Michael Liao wrote:
> > Hi
> > 
> > Here's the 2nd patch from a series of patch revising/enhancing the
> > current atomic primitive code generation support in X86 backend. This
> > patch revises all pseudo atomic instruction based on CMPXCHG.
> > 
> > * One load is removed from the spin-loop to reduce loop overhead as
> > CMPXCHG will load that memory operand.
> > * Since most of them shares the same code skelteton and only differ each
> > other by the updating logic, they are unified into the same one,
> > EmitAtomicLoadArith and EmitAtomicLoadArith6432 (for 64-bit operand on
> > 32-bit target.)
> > * remove physical register constraints on pseudo atomic instructions
> > * add pseudo CMOV support if the underly targets have no CMOV feature
> > * refine test cases due to the spin-loop change
> > 
> > Please review them and commit if they're OK.
> > 
> > Yours
> > - Michael
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-refine-code-generation-for-atomic-operations-with-sp.patch
Type: text/x-patch
Size: 46949 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120818/3725c1aa/attachment.bin>


More information about the llvm-commits mailing list