mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-24 13:33:37 +02:00
0ad83683fc
Summary: Previously, we were inserting an InlineAsm statement for each line of the inline assembly. This works for GAS but it triggers prologue/epilogue emission when IAS is in use. This caused: .set noreorder .cpload $25 to be emitted as: .set push .set reorder .set noreorder .set pop .set push .set reorder .cpload $25 .set pop which led to assembler errors and caused the test to fail. The whitespace-after-comma changes included in this patch are necessary to match the output when IAS is in use. Reviewers: vkalintiris Subscribers: rkotler, llvm-commits, dsanders Differential Revision: http://reviews.llvm.org/D13653 llvm-svn: 250895
22 lines
621 B
LLVM
22 lines
621 B
LLVM
; RUN: llc -mtriple=mipsel-linux-gnu -march=mipsel -mattr=mips16 -relocation-model=pic < %s | FileCheck %s -check-prefix=picfp16
|
|
|
|
@x = external global float
|
|
|
|
; Function Attrs: nounwind
|
|
define void @v_sf(float %p) #0 {
|
|
entry:
|
|
%p.addr = alloca float, align 4
|
|
store float %p, float* %p.addr, align 4
|
|
%0 = load float, float* %p.addr, align 4
|
|
store float %0, float* @x, align 4
|
|
ret void
|
|
}
|
|
; picfp16: .ent __fn_stub_v_sf
|
|
; picfp16: .cpload $25
|
|
; picfp16: .set reorder
|
|
; picfp16: .reloc 0, R_MIPS_NONE, v_sf
|
|
; picfp16: la $25, $__fn_local_v_sf
|
|
; picfp16: mfc1 $4, $f12
|
|
; picfp16: jr $25
|
|
; picfp16: .end __fn_stub_v_sf
|