OSDN Git Service

[X86] Move the ATOMIC_LOAD_OP ISel from DAGToDAG to ISelLowering. NFCI.
authorAhmed Bougacha <ahmed.bougacha@gmail.com>
Mon, 29 Feb 2016 19:28:07 +0000 (19:28 +0000)
committerAhmed Bougacha <ahmed.bougacha@gmail.com>
Mon, 29 Feb 2016 19:28:07 +0000 (19:28 +0000)
commit462318cb2d2ca2a5d15cc4a3552856e055f62b92
treecf5ae144eb6a709db094bffe03c33f3262fe22ed
parent4a487ecba9ac5bb58701d5ebf690dde52bc9f7c8
[X86] Move the ATOMIC_LOAD_OP ISel from DAGToDAG to ISelLowering. NFCI.

This is long-standing dirtiness, as acknowledged by r77582:

    The current trick is to select it into a merge_values with
    the first definition being an implicit_def. The proper solution is
    to add new ISD opcodes for the no-output variant.

Doing this before selection will let us combine away some constructs.

Differential Revision: http://reviews.llvm.org/D17659

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@262244 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelDAGToDAG.cpp
lib/Target/X86/X86ISelLowering.cpp
lib/Target/X86/X86ISelLowering.h
lib/Target/X86/X86InstrCompiler.td
lib/Target/X86/X86InstrInfo.td