1; Check the emission of directives at the start of an asm file.
2
3; ### O32 ABI ###
4; RUN: llc -filetype=asm -mtriple mips-unknown-linux -mcpu=mips32 \
5; RUN: -relocation-model=static %s -o - | \
6; RUN:   FileCheck -DNAN=legacy -DABI=32 -check-prefixes=CHECK,STATIC-O32 %s
7
8; RUN: llc -filetype=asm -mtriple mips-unknown-linux -mcpu=mips32 \
9; RUN: -relocation-model=pic %s -o - | \
10; RUN:   FileCheck -DNAN=legacy -DABI=32 -check-prefixes=CHECK,PIC-O32 %s
11
12; RUN: llc -filetype=asm -mtriple mips-unknown-linux -mcpu=mips32 \
13; RUN: -relocation-model=static -mattr=+nan2008 %s -o - | \
14; RUN:   FileCheck -DNAN=2008 -DABI=32 -check-prefixes=CHECK,STATIC-O32 %s
15
16; RUN: llc -filetype=asm -mtriple mips-unknown-linux -mcpu=mips32 \
17; RUN: -relocation-model=pic -mattr=+nan2008 %s -o - | \
18; RUN:   FileCheck -DNAN=2008 -DABI=32 -check-prefixes=CHECK,PIC-O32 %s
19
20; ### N32 ABI ###
21; RUN: llc -filetype=asm -mtriple mips64-unknown-linux -mcpu=mips64 \
22; RUN: -relocation-model=static -target-abi n32 %s -o - | \
23; RUN:   FileCheck -DNAN=legacy -DABI=N32 -check-prefixes=CHECK,STATIC-N32 %s
24
25; RUN: llc -filetype=asm -mtriple mips64-unknown-linux -mcpu=mips64 \
26; RUN: -relocation-model=pic -target-abi n32 %s -o - | \
27; RUN:   FileCheck -DNAN=legacy -DABI=N32 -check-prefixes=CHECK,PIC-N32 %s
28
29; RUN: llc -filetype=asm -mtriple mips64-unknown-linux -mcpu=mips64 \
30; RUN: -relocation-model=static -target-abi n32 -mattr=+nan2008 %s -o - | \
31; RUN:   FileCheck -DNAN=2008 -DABI=N32 -check-prefixes=CHECK,STATIC-N32 %s
32
33; RUN: llc -filetype=asm -mtriple mips64-unknown-linux -mcpu=mips64 \
34; RUN: -relocation-model=pic -target-abi n32 -mattr=+nan2008 %s -o - | \
35; RUN:   FileCheck -DNAN=2008 -DABI=N32 -check-prefixes=CHECK,PIC-N32 %s
36
37; ### N64 ABI ###
38; RUN: llc -filetype=asm -mtriple mips64-unknown-linux -mcpu=mips64 \
39; RUN: -relocation-model=static -target-abi n64 %s -o - | \
40; RUN:   FileCheck -DNAN=legacy -DABI=64 -check-prefixes=CHECK,STATIC-N64 %s
41
42; RUN: llc -filetype=asm -mtriple mips64-unknown-linux -mcpu=mips64 \
43; RUN: -relocation-model=pic -target-abi n64 %s -o - | \
44; RUN:   FileCheck -DNAN=legacy -DABI=64 -check-prefixes=CHECK,PIC-N64 %s
45
46; RUN: llc -filetype=asm -mtriple mips64-unknown-linux -mcpu=mips64 \
47; RUN: -relocation-model=static -target-abi n64 -mattr=+nan2008 %s -o - | \
48; RUN:   FileCheck -DNAN=2008 -DABI=64 -check-prefixes=CHECK,STATIC-N64 %s
49
50; RUN: llc -filetype=asm -mtriple mips64-unknown-linux -mcpu=mips64 \
51; RUN: -relocation-model=pic -target-abi n64 -mattr=+nan2008 %s -o - | \
52; RUN:   FileCheck -DNAN=2008 -DABI=64 -check-prefixes=CHECK,PIC-N64 %s
53
54; STATIC-O32: .abicalls
55; STATIC-O32: .option pic0
56
57; PIC-O32: .abicalls
58; PIC-O32-NOT: .option pic0
59
60; STATIC-N32: .abicalls
61; STATIC-N32: .option pic0
62
63; PIC-N32: .abicalls
64; PIC-N32-NOT: .option pic0
65
66; STATIC-N64-NOT: .abicalls
67; STATIC-N64-NOT: .option pic0
68
69; PIC-N64: .abicalls
70; PIC-N64-NOT: .option pic0
71
72; CHECK: .section .mdebug.abi[[ABI]]
73; CHECK: .nan [[NAN]]
74; CHECK: .text
75; CHECK: .file
76