File tree 3 files changed +13
-40
lines changed 3 files changed +13
-40
lines changed Original file line number Diff line number Diff line change 1
1
! Test -emit-obj (X86)
2
2
3
- ! REQUIRES: aarch64-registered-target, x86-registered-target
3
+ ! REQUIRES: aarch64-registered-target
4
4
5
- ! RUN: rm -f %t.o
6
- ! RUN: %flang_fc1 -emit-obj -triple aarch64-unknown-linux-gnu %s -o %t.o
7
- ! RUN: llvm-objdump --triple aarch64-unknown-linux-gnu --disassemble-all %t.o | FileCheck %s --check-prefix=CORRECT_TRIPLE
8
- ! RUN: rm -f %t.o
9
- ! RUN: %flang -c --target=aarch64-unknown-linux-gnu %s -o %t.o
10
- ! RUN: llvm-objdump --triple aarch64-unknown-linux-gnu --disassemble-all %t.o | FileCheck %s --check-prefix=CORRECT_TRIPLE
11
-
12
- ! RUN: %flang -c --target=aarch64-unknown-linux-gnu %s -o %t.o
13
- ! RUN: llvm-objdump --triple x86_64-unknown-linux-gnu --disassemble-all %t.o | FileCheck %s --check-prefix=INCORRECT_TRIPLE
14
-
15
- ! CORRECT_TRIPLE-LABEL: <_QQmain>:
16
- ! CORRECT_TRIPLE-NEXT: ret
17
-
18
- ! When incorrect triple is used to disassemble, there won't be a ret instruction at all.
19
- ! INCORRECT_TRIPLE-LABEL: <_QQmain>:
20
- ! INCORRECT_TRIPLE-NOT: ret
5
+ ! RUN: %flang_fc1 -triple aarch64-unknown-linux-gnu -emit-obj %s -o - | \
6
+ ! RUN: llvm-readobj -h - | FileCheck %s
21
7
8
+ ! CHECK: Arch: aarch64
22
9
end program
Original file line number Diff line number Diff line change 2
2
3
3
! REQUIRES: riscv-registered-target
4
4
5
- ! RUN: rm -f %t.o
6
5
! RUN: %flang_fc1 -triple riscv64-unknown-linux-gnu \
7
- ! RUN: -target-feature +d -target-feature +c -emit-obj %s -o %t.o
8
- ! RUN: llvm-readobj -h %t.o | FileCheck %s
6
+ ! RUN: -target-feature +d -target-feature +c -emit-obj %s -o - | \
7
+ ! RUN: llvm-readobj -h - | FileCheck %s
9
8
10
- ! RUN: rm -f %t.o
11
- ! RUN: %flang --target=riscv64-unknown-linux-gnu -c %s -o %t.o
12
- ! RUN: llvm-readobj -h %t.o | FileCheck %s
9
+ ! RUN: %flang --target=riscv64-unknown-linux-gnu -c %s -o - | \
10
+ ! RUN: llvm-readobj -h - | FileCheck %s
13
11
14
12
! If Flang failed to emit target-feature info, then Flags will be 0x0.
13
+ ! CHECK: Arch: riscv64
15
14
! CHECK: Flags [ (0x5)
16
15
! CHECK-NEXT: EF_RISCV_FLOAT_ABI_DOUBLE (0x4)
17
16
! CHECK-NEXT: EF_RISCV_RVC (0x1)
Original file line number Diff line number Diff line change 1
1
! Test -emit-obj (X86)
2
2
3
- ! REQUIRES: x86-registered-target, aarch64-registered-target
3
+ ! REQUIRES: x86-registered-target
4
4
5
- ! RUN: rm -f %t.o
6
- ! RUN: %flang_fc1 -triple x86_64-unknown-linux-gnu -emit-obj %s -o %t.o
7
- ! RUN: llvm-objdump --triple x86_64-unknown-linux-gnu --disassemble-all %t.o | FileCheck %s --check-prefix=CORRECT_TRIPLE
8
- ! RUN: rm -f %t.o
9
- ! RUN: %flang --target=x86_64-unknown-linux-gnu -c %s -o %t.o
10
- ! RUN: llvm-objdump --triple x86_64-unknown-linux-gnu --disassemble-all %t.o | FileCheck %s --check-prefix=CORRECT_TRIPLE
11
-
12
- ! RUN: %flang -c --target=x86_64-unknown-linux-gnu %s -o %t.o
13
- ! RUN: llvm-objdump --triple aarch64-unknown-linux-gnu --disassemble-all %t.o | FileCheck %s --check-prefix=INCORRECT_TRIPLE
14
-
15
- ! CORRECT_TRIPLE-LABEL: <_QQmain>:
16
- ! CORRECT_TRIPLE-NEXT: retq
17
-
18
- ! When incorrect triple is used to disassemble, there won't be a ret(q) instruction at all.
19
- ! INCORRECT_TRIPLE-LABEL: <_QQmain>:
20
- ! INCORRECT_TRIPLE-NOT: ret
5
+ ! RUN: %flang_fc1 -triple x86_64-unknown-linux-gnu -emit-obj %s -o - | \
6
+ ! RUN: llvm-readobj -h - | FileCheck %s
21
7
8
+ ! CHECK: Arch: x86_64
22
9
end program
You can’t perform that action at this time.
0 commit comments