mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-09-16 18:59:20 +00:00
68fe665b9a
physical register $r1 to $r0. GNU disassembler recognizes an "or" instruction as a "move", and this change makes the disassembled code easier to read. Original patch by Reed Kotler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170655 91177308-0d34-0410-b5e6-96231b3b80d8
24 lines
457 B
LLVM
24 lines
457 B
LLVM
; RUN: llc -march=mipsel < %s | FileCheck %s
|
|
|
|
define i8* @f1() nounwind {
|
|
entry:
|
|
%0 = call i8* @llvm.returnaddress(i32 0)
|
|
ret i8* %0
|
|
|
|
; CHECK: or $2, $ra, $zero
|
|
}
|
|
|
|
define i8* @f2() nounwind {
|
|
entry:
|
|
call void @g()
|
|
%0 = call i8* @llvm.returnaddress(i32 0)
|
|
ret i8* %0
|
|
|
|
; CHECK: or $[[R0:[0-9]+]], $ra, $zero
|
|
; CHECK: jal
|
|
; CHECK: or $2, $[[R0]], $zero
|
|
}
|
|
|
|
declare i8* @llvm.returnaddress(i32) nounwind readnone
|
|
declare void @g()
|