llvm-mirror/test/MC/Mips/macro-la-bad.s
Daniel Sanders b2dfd80630 [mips] [IAS] Add support for the DLA pseudo-instruction and fix problems with DLI
Summary: It is the same as LA, except that it can also load 64-bit addresses and it only works on 64-bit MIPS architectures.

Reviewers: tomatabacu, seanbruno, vkalintiris

Subscribers: brooks, seanbruno, emaste, llvm-commits

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

llvm-svn: 245208
2015-08-17 10:11:55 +00:00

24 lines
1.0 KiB
ArmAsm

# RUN: not llvm-mc %s -arch=mips -mcpu=mips32r2 2>%t1
# RUN: FileCheck %s < %t1 --check-prefix=O32
# RUN: not llvm-mc %s -arch=mips64 -mcpu=mips64 -target-abi n32 2>&1 | \
# RUN: FileCheck %s --check-prefix=N32
# RUN: not llvm-mc %s -arch=mips64 -mcpu=mips64 -target-abi n64 2>&1 | \
# RUN: FileCheck %s --check-prefix=N64
.text
la $5, 0x100000000
# O32: :[[@LINE-1]]:3: error: instruction requires a 32-bit immediate
# N32: :[[@LINE-2]]:3: error: instruction requires a 32-bit immediate
# N64: :[[@LINE-3]]:3: error: la used to load 64-bit address
la $5, 0x100000000($6)
# O32: :[[@LINE-1]]:3: error: instruction requires a 32-bit immediate
# N32: :[[@LINE-2]]:3: error: instruction requires a 32-bit immediate
# N64: :[[@LINE-3]]:3: error: la used to load 64-bit address
# FIXME: These should be warnings but we lack la -> dla promotion at the
# moment.
la $5, symbol
# N32-NOT: :[[@LINE-1]]:3: error: la used to load 64-bit address
# N64: :[[@LINE-2]]:3: error: la used to load 64-bit address