R600/SI: Fix verifier error with pseudo store instructions.
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Thu, 1 May 2014 16:37:52 +0000 (16:37 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Thu, 1 May 2014 16:37:52 +0000 (16:37 +0000)
Use i32 instead of specifying SReg_32. When this is
the pseudo INDIRECT_BASE_ADDR, this would give a bogus
verifier error.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207770 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/R600/SIInstrInfo.td
test/CodeGen/R600/array-ptr-calc-i32.ll
test/CodeGen/R600/insert_vector_elt.ll
test/CodeGen/R600/private-memory.ll

index 93de9aa46098b8631720fbe6fe93d563075d00bb..7e8512d20db55de68007b6c2184202d02436f784 100644 (file)
@@ -137,7 +137,7 @@ class SGPRImm <dag frag> : PatLeaf<frag, [{
 }]>;
 
 def FRAMEri32 : Operand<iPTR> {
-  let MIOperandInfo = (ops SReg_32:$ptr, i32imm:$index);
+  let MIOperandInfo = (ops i32:$ptr, i32imm:$index);
 }
 
 //===----------------------------------------------------------------------===//
index cb2a1c80a1609ad93452ba365da0d40ef11033b8..c2362da15cdefabe83fa2401d0c397059f038af9 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: llc -march=r600 -mcpu=SI < %s | FileCheck -check-prefix=SI %s
+; RUN: llc -verify-machineinstrs -march=r600 -mcpu=SI < %s | FileCheck -check-prefix=SI %s
 
 declare i32 @llvm.SI.tid() nounwind readnone
 declare void @llvm.AMDGPU.barrier.local() nounwind noduplicate
index 03cd83a2a6079fc48ec2fedc3c208d7405eee9ce..43b4efc93377b6663a2d3264e714c5aec9e5fa2d 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: llc -march=r600 -mcpu=SI < %s | FileCheck -check-prefix=SI %s
+; RUN: llc -verify-machineinstrs -march=r600 -mcpu=SI < %s | FileCheck -check-prefix=SI %s
 
 ; FIXME: Broken on evergreen
 ; FIXME: For some reason the 8 and 16 vectors are being stored as
index 6543ab7a59742755e3bd8b9a359310b17238ed76..d3453f26aee63ad46df0b93fb3556e755c8ce3db 100644 (file)
@@ -1,5 +1,5 @@
-; RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck %s --check-prefix=R600-CHECK --check-prefix=FUNC
-; RUN: llc < %s -march=r600 -mcpu=SI | FileCheck %s --check-prefix=SI-CHECK --check-prefix=FUNC
+; RUN: llc -march=r600 -mcpu=redwood < %s | FileCheck %s --check-prefix=R600-CHECK --check-prefix=FUNC
+; RUN: llc -verify-machineinstrs -march=r600 -mcpu=SI < %s | FileCheck %s --check-prefix=SI-CHECK --check-prefix=FUNC
 
 ; This test checks that uses and defs of the AR register happen in the same
 ; instruction clause.