mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-24 13:18:17 +00:00
[Sparc] Emit 'restore' instead of 'restore %g0, %g0, %g0'. This improves the readability of the generated code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202563 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -21,7 +21,8 @@ entry:
|
||||
;SPARC64: save %sp, -128, %sp
|
||||
;SPARC64: add %fp, 2047, %i0
|
||||
;SPARC64: ret
|
||||
;SPARC64: restore %g0, %g0, %g0
|
||||
;SPARC64-NOT: restore %g0, %g0, %g0
|
||||
;SPARC64: restore
|
||||
|
||||
%0 = tail call i8* @llvm.frameaddress(i32 0)
|
||||
ret i8* %0
|
||||
|
||||
@@ -141,7 +141,8 @@ entry:
|
||||
;CHECK-LABEL: restore_or_imm:
|
||||
;CHECK: or %o0, 20, %i0
|
||||
;CHECK: ret
|
||||
;CHECK: restore %g0, %g0, %g0
|
||||
;CHECK-NOT: restore %g0, %g0, %g0
|
||||
;CHECK: restore
|
||||
%0 = tail call i32 @bar(i32 %a) nounwind
|
||||
%1 = or i32 %0, 20
|
||||
ret i32 %1
|
||||
@@ -174,7 +175,8 @@ define i32 @restore_sethi_large(i32 %a) {
|
||||
entry:
|
||||
;CHECK-LABEL: restore_sethi_large:
|
||||
;CHECK: sethi 4000, %i0
|
||||
;CHECK: restore %g0, %g0, %g0
|
||||
;CHECK-NOT: restore %g0, %g0, %g0
|
||||
;CHECK: restore
|
||||
%0 = tail call i32 @bar(i32 %a) nounwind
|
||||
%1 = icmp ne i32 %0, 0
|
||||
%2 = select i1 %1, i32 4096000, i32 0
|
||||
|
||||
Reference in New Issue
Block a user