[PATCH] D49171: [Sparc] Use the correct encoding for ta 3

Daniel Cederman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 11 01:32:22 PDT 2018


dcederman created this revision.
dcederman added reviewers: venkatra, jyknight.
Herald added subscribers: llvm-commits, jrtc27, fedor.sergeev.

The old encoding generated a "tn %g1 + 3" instruction instead of the expected "ta 3".


Repository:
  rL LLVM

https://reviews.llvm.org/D49171

Files:
  lib/Target/Sparc/SparcInstrInfo.td
  test/CodeGen/SPARC/2011-01-11-FrameAddr.ll


Index: test/CodeGen/SPARC/2011-01-11-FrameAddr.ll
===================================================================
--- test/CodeGen/SPARC/2011-01-11-FrameAddr.ll
+++ test/CodeGen/SPARC/2011-01-11-FrameAddr.ll
@@ -1,6 +1,6 @@
-;RUN: llc -march=sparc < %s | FileCheck %s -check-prefix=V8
+;RUN: llc -march=sparc -show-mc-encoding < %s | FileCheck %s -check-prefix=V8
 ;RUN: llc -march=sparc -mattr=v9 < %s | FileCheck %s -check-prefix=V9
-;RUN: llc -march=sparc -regalloc=basic < %s | FileCheck %s -check-prefix=V8
+;RUN: llc -march=sparc -show-mc-encoding -regalloc=basic < %s | FileCheck %s -check-prefix=V8
 ;RUN: llc -march=sparc -regalloc=basic -mattr=v9 < %s | FileCheck %s -check-prefix=V9
 ;RUN: llc -march=sparcv9  < %s | FileCheck %s -check-prefix=SPARC64
 
@@ -31,7 +31,7 @@
 define i8* @frameaddr2() nounwind readnone {
 entry:
 ;V8-LABEL: frameaddr2:
-;V8: ta 3
+;V8: ta 3 ! encoding: [0x91,0xd0,0x20,0x03]
 ;V8: ld [%fp+56], {{.+}}
 ;V8: ld [{{.+}}+56], {{.+}}
 ;V8: ld [{{.+}}+56], {{.+}}
Index: lib/Target/Sparc/SparcInstrInfo.td
===================================================================
--- lib/Target/Sparc/SparcInstrInfo.td
+++ lib/Target/Sparc/SparcInstrInfo.td
@@ -421,7 +421,7 @@
     def FLUSHW : F3_1<0b10, 0b101011, (outs), (ins),
                       "flushw",
                       [(flushw)]>, Requires<[HasV9]>;
-  let rd = 0, rs1 = 1, simm13 = 3 in
+  let rd = 8, rs1 = 0, simm13 = 3 in
     def TA3 : F3_2<0b10, 0b111010, (outs), (ins),
                    "ta 3",
                    [(flushw)]>;


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D49171.154944.patch
Type: text/x-patch
Size: 1543 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180711/89ac2039/attachment.bin>


More information about the llvm-commits mailing list