[MIPS GlobalISel] Select G_FENCE
authorPetar Avramovic <Petar.Avramovic@rt-rk.com>
Thu, 5 Sep 2019 11:20:32 +0000 (11:20 +0000)
committerPetar Avramovic <Petar.Avramovic@rt-rk.com>
Thu, 5 Sep 2019 11:20:32 +0000 (11:20 +0000)
commita4bfc8dfdaef430550b13041238a65e8613f2561
treea41500c69c126ce7c47169f78208fad3a04ff168
parentf5c7fe0795c8f2de8ee2c9fe6e8fbd89e1cf8bff
[MIPS GlobalISel] Select G_FENCE

G_FENCE comes form fence instruction. For MIPS fence is generated in
AtomicExpandPass when atomic instruction gets surrounded with fence
instruction when needed.
G_FENCE arguments don't have LLT, because of that there is no job for
legalizer and regbankselect. Instruction select G_FENCE for MIPS32.

Differential Revision: https://reviews.llvm.org/D67181

llvm-svn: 371056
llvm/lib/Target/Mips/MipsInstructionSelector.cpp
llvm/test/CodeGen/Mips/GlobalISel/instruction-select/fence.mir [new file with mode: 0644]
llvm/test/CodeGen/Mips/GlobalISel/legalizer/fence.mir [new file with mode: 0644]
llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/fence.ll [new file with mode: 0644]
llvm/test/CodeGen/Mips/GlobalISel/regbankselect/fence.mir [new file with mode: 0644]