Handle i64 FrameIndex nodes in SPARC v9 mode.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Sun, 19 May 2013 19:14:24 +0000 (19:14 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Sun, 19 May 2013 19:14:24 +0000 (19:14 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182216 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Sparc/SparcInstrInfo.td
test/CodeGen/SPARC/64bit.ll

index baefb0642d471ba567631e4bac792c82fc94c8df..740390f3f568e950f034a5d028989508104ef2f5 100644 (file)
@@ -463,7 +463,7 @@ defm ADD   : F3_12<"add", 0b000000, add>;
 def LEA_ADDri   : F3_2<2, 0b000000,
                    (outs IntRegs:$dst), (ins MEMri:$addr),
                    "add ${addr:arith}, $dst",
-                   [(set i32:$dst, ADDRri:$addr)]>;
+                   [(set iPTR:$dst, ADDRri:$addr)]>;
 
 let Defs = [ICC] in                   
   defm ADDCC  : F3_12<"addcc", 0b010000, addc>;
index 2bbf7deb1684f61f08928324275eb801189001b7..37dcea9891d29a1de6f9be81fc04236bfecf7a97 100644 (file)
@@ -181,3 +181,13 @@ define i64 @unsigned_divide(i64 %a, i64 %b) {
   %r = udiv i64 %a, %b
   ret i64 %r
 }
+
+define void @access_fi() {
+entry:
+  %b = alloca [32 x i8], align 1
+  %arraydecay = getelementptr inbounds [32 x i8]* %b, i64 0, i64 0
+  call void @g(i8* %arraydecay) #2
+  ret void
+}
+
+declare void @g(i8*)