mirror of
https://github.com/RPCSX/llvm.git
synced 2025-02-04 19:38:22 +00:00
77676424fd
The global IR values in machine memory operands should use the global value '@<name>' syntax instead of the current '%ir.<name>' syntax. However, the global value call entry pseudo source values use the global value syntax already. Therefore, the syntax for the call entry pseudo source values has to be changed so that the global values and call entry global value PSVs can be parsed without ambiguities. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@245526 91177308-0d34-0410-b5e6-96231b3b80d8
42 lines
1.3 KiB
YAML
42 lines
1.3 KiB
YAML
# RUN: not llc -march=mipsel -mcpu=mips16 -relocation-model=pic -start-after branch-folder -stop-after branch-folder -o /dev/null %s 2>&1 | FileCheck %s
|
|
--- |
|
|
define i32 @test(i32 %a) {
|
|
entry:
|
|
%call = call i32 @foo(i32 %a)
|
|
ret i32 0
|
|
}
|
|
|
|
declare i32 @foo(i32)
|
|
...
|
|
---
|
|
name: test
|
|
tracksRegLiveness: true
|
|
liveins:
|
|
- { reg: '%a0' }
|
|
frameInfo:
|
|
stackSize: 24
|
|
maxAlignment: 4
|
|
adjustsStack: true
|
|
hasCalls: true
|
|
maxCallFrameSize: 16
|
|
stack:
|
|
- { id: 0, type: spill-slot, offset: -4, size: 4, alignment: 4,
|
|
callee-saved-register: '%ra' }
|
|
body: |
|
|
bb.0.entry:
|
|
liveins: %a0, %ra
|
|
|
|
Save16 %ra, 24, implicit-def %sp, implicit %sp
|
|
%v0, %v1 = GotPrologue16 $_gp_disp, $_gp_disp
|
|
%v0 = SllX16 killed %v0, 16
|
|
%v0 = AdduRxRyRz16 killed %v1, killed %v0
|
|
; CHECK: [[@LINE+1]]:67: expected a global value or an external symbol after 'call-entry'
|
|
%v1 = LwRxRyOffMemX16 %v0, @foo, 0 :: (load 4 from call-entry foo)
|
|
%t9 = COPY %v1
|
|
%gp = COPY killed %v0
|
|
JumpLinkReg16 killed %v1, csr_o32, implicit-def %ra, implicit killed %t9, implicit %a0, implicit killed %gp, implicit-def %sp, implicit-def dead %v0
|
|
%v0 = LiRxImmX16 0
|
|
%ra = Restore16 24, implicit-def %sp, implicit %sp
|
|
RetRA16 implicit %v0
|
|
...
|