forked from OSchip/llvm-project
Use the integrated assembler as default on SystemZ
This was already done in clang, this commit now uses the integrated assembler as default when using LLVM tools directly. A number of test cases deliberately using an invalid instruction in inline asm now have to use -no-integrated-as. llvm-svn: 225820
This commit is contained in:
parent
6b577e26f0
commit
bd039299c0
|
@ -24,4 +24,6 @@ SystemZMCAsmInfo::SystemZMCAsmInfo(StringRef TT) {
|
|||
UsesELFSectionDirectiveForBSS = true;
|
||||
SupportsDebugInformation = true;
|
||||
ExceptionsType = ExceptionHandling::DwarfCFI;
|
||||
|
||||
UseIntegratedAssembler = true;
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; Test the "Q" asm constraint, which accepts addresses that have a base
|
||||
; and a 12-bit displacement.
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
; Check the lowest range.
|
||||
define void @f1(i64 %base) {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; Test the "R" asm constraint, which accepts addresses that have a base,
|
||||
; an index and a 12-bit displacement.
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
; Check the lowest range.
|
||||
define void @f1(i64 %base) {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; Test the "S" asm constraint, which accepts addresses that have a base
|
||||
; and a 20-bit displacement.
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
define void @f1(i64 %base) {
|
||||
; CHECK-LABEL: f1:
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; Test the "T" asm constraint, which accepts addresses that have a base,
|
||||
; an index and a 20-bit displacement.
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
define void @f1(i64 %base) {
|
||||
; CHECK-LABEL: f1:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the "m" asm constraint, which is equivalent to "T".
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
define void @f1(i64 %base) {
|
||||
; CHECK-LABEL: f1:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the GPR constraint "a", which forbids %r0.
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
define i64 @f1() {
|
||||
; CHECK-LABEL: f1:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the GPR constraint "r".
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
define i64 @f1() {
|
||||
; CHECK-LABEL: f1:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the GPR constraint "d", which is equivalent to "r".
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
define i64 @f1() {
|
||||
; CHECK-LABEL: f1:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test matching operands with the GPR constraint "r".
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
define void @f1(i32 *%dst) {
|
||||
; CHECK-LABEL: f1:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the FPR constraint "f".
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
define float @f1() {
|
||||
; CHECK-LABEL: f1:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the "I" constraint (8-bit unsigned constants).
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
; Test 1 below the first valid value.
|
||||
define i32 @f1() {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the "J" constraint (12-bit unsigned constants).
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
; Test 1 below the first valid value.
|
||||
define i32 @f1() {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the "K" constraint (16-bit signed constants).
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
; Test 1 below the first valid value.
|
||||
define i32 @f1() {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the "L" constraint (20-bit signed constants).
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
; Test 1 below the first valid value.
|
||||
define i32 @f1() {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the "M" constraint (0x7fffffff)
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
; Test 1 below the valid value.
|
||||
define i32 @f1() {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test the "M" constraint (0x7fffffff)
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
; Test 1 below the valid value.
|
||||
define i32 @f1() {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test explicit register names.
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
; Test i32 GPRs.
|
||||
define i32 @f1() {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; Test high-word operations, using "h" constraints to force a high
|
||||
; register and "r" constraints to force a low register.
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z196 | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z196 -no-integrated-as | FileCheck %s
|
||||
|
||||
; Test loads and stores involving mixtures of high and low registers.
|
||||
define void @f1(i32 *%ptr1, i32 *%ptr2) {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; Test that floating-point compares are omitted if CC already has the
|
||||
; right value.
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z10 | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z10 -no-integrated-as | FileCheck %s
|
||||
|
||||
declare float @llvm.fabs.f32(float %f)
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; Test that compares are omitted if CC already has the right value
|
||||
; (z10 version).
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z10 | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z10 -no-integrated-as | FileCheck %s
|
||||
|
||||
declare void @foo()
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; Test that compares are omitted if CC already has the right value
|
||||
; (z196 version).
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z196 | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z196 -no-integrated-as | FileCheck %s
|
||||
|
||||
; Addition provides enough for equality comparisons with zero. First teest
|
||||
; the EQ case with LOC.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; Test memchr using SRST, with the correct prototype.
|
||||
;
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
|
||||
|
||||
declare i8 *@memchr(i8 *%src, i32 %char, i64 %len)
|
||||
|
||||
|
|
Loading…
Reference in New Issue