[llvm] r289192 - [AVR] Use a more appropriate integer type for wide IN/OUT instructions

Dylan McKay via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 8 23:49:14 PST 2016


Author: dylanmckay
Date: Fri Dec  9 01:49:14 2016
New Revision: 289192

URL: http://llvm.org/viewvc/llvm-project?rev=289192&view=rev
Log:
[AVR] Use a more appropriate integer type for wide IN/OUT instructions

We could previously select an integer which would hit an assertion error
in pseudo expansion.

The new type will also generate the appropriate fixups if needed, which
wasn't done beforehand.

Modified:
    llvm/trunk/lib/Target/AVR/AVRInstrInfo.td

Modified: llvm/trunk/lib/Target/AVR/AVRInstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AVR/AVRInstrInfo.td?rev=289192&r1=289191&r2=289192&view=diff
==============================================================================
--- llvm/trunk/lib/Target/AVR/AVRInstrInfo.td (original)
+++ llvm/trunk/lib/Target/AVR/AVRInstrInfo.td Fri Dec  9 01:49:14 2016
@@ -1502,7 +1502,7 @@ isReMaterializable = 1 in
                      [(set i8:$dst, (load ioaddr8:$src))]>;
 
   def INWRdA : Pseudo<(outs DREGS:$dst),
-                      (ins i16imm:$src),
+                      (ins imm_port6:$src),
                       "inw\t$dst, $src",
                       [(set i16:$dst, (load ioaddr16:$src))]>;
 }
@@ -1514,7 +1514,7 @@ def OUTARr : FIOARr<(outs),
                     [(store i8:$src, ioaddr8:$dst)]>;
 
 def OUTWARr : Pseudo<(outs),
-                     (ins i16imm:$dst, DREGS:$src),
+                     (ins imm_port6:$dst, DREGS:$src),
                      "outw\t$dst, $src",
                      [(store i16:$src, ioaddr16:$dst)]>;
 




More information about the llvm-commits mailing list