[llvm] r179686 - R600: Make Export Instruction not duplicable
Vincent Lejeune
vljn at ovi.com
Wed Apr 17 08:17:39 PDT 2013
Author: vljn
Date: Wed Apr 17 10:17:39 2013
New Revision: 179686
URL: http://llvm.org/viewvc/llvm-project?rev=179686&view=rev
Log:
R600: Make Export Instruction not duplicable
Modified:
llvm/trunk/lib/Target/R600/R600Instructions.td
llvm/trunk/test/CodeGen/R600/jump_address.ll
Modified: llvm/trunk/lib/Target/R600/R600Instructions.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/R600/R600Instructions.td?rev=179686&r1=179685&r2=179686&view=diff
==============================================================================
--- llvm/trunk/lib/Target/R600/R600Instructions.td (original)
+++ llvm/trunk/lib/Target/R600/R600Instructions.td Wed Apr 17 10:17:39 2013
@@ -738,7 +738,9 @@ multiclass SteamOutputExportPattern<Inst
4095, imm:$mask, buf3inst, 0)>;
}
-let usesCustomInserter = 1 in {
+// Export Instructions should not be duplicated by TailDuplication pass
+// (which assumes that duplicable instruction are affected by exec mask)
+let usesCustomInserter = 1, isNotDuplicable = 1 in {
class ExportSwzInst : InstR600ISA<(
outs),
Modified: llvm/trunk/test/CodeGen/R600/jump_address.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/R600/jump_address.ll?rev=179686&r1=179685&r2=179686&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/R600/jump_address.ll (original)
+++ llvm/trunk/test/CodeGen/R600/jump_address.ll Wed Apr 17 10:17:39 2013
@@ -1,6 +1,8 @@
;RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck %s
-; CHECK: JUMP @4
+; CHECK: JUMP @3
+; CHECK: EXPORT
+; CHECK-NOT: EXPORT
define void @main() #0 {
main_body:
More information about the llvm-commits
mailing list