1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 03:53:04 +02:00
llvm-mirror/test/MC/Mips/init-order-bug.ll
Daniel Sanders 9b9d5f9f6f [mips] Fix inconsistent .cprestore behaviour between direct object emission and assembling.
Summary:
Direct object emission has an initialization order problem where an
InitMCObjectFile is called after MipsTargetELFStreamer determines whether
PIC is enabled by default or not. There doesn't seem to be point that
initializes all cases so split the responsibility between
MipsTargetELFStreamer and MipsAsmPrinter.

Reviewers: sdardis

Subscribers: dsanders, llvm-commits, sdardis

Differential Revision: http://reviews.llvm.org/D19728

llvm-svn: 268737
2016-05-06 14:37:24 +00:00

13 lines
456 B
LLVM

; RUN: llc -mtriple=mipsel-linux-gnu -relocation-model=pic -filetype=asm < %s | \
; RUN: llvm-mc -triple=mipsel-linux-gnu -relocation-model=pic -filetype=obj | \
; RUN: llvm-objdump -d - | FileCheck %s
; RUN: llc -mtriple=mipsel-linux-gnu -relocation-model=pic -filetype=obj < %s | \
; RUN: llvm-objdump -d - | FileCheck %s
define void @foo() {
call void asm sideeffect "\09.cprestore 512", "~{$1}"()
ret void
}
; CHECK: sw $gp, 512($sp)