From 81d2500685be79e75d3631668d42a0c780da2be9 Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Tue, 13 Jan 2015 19:45:16 +0000 Subject: [PATCH] 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225820 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp | 2 ++ test/CodeGen/SystemZ/asm-01.ll | 2 +- test/CodeGen/SystemZ/asm-02.ll | 2 +- test/CodeGen/SystemZ/asm-03.ll | 2 +- test/CodeGen/SystemZ/asm-04.ll | 2 +- test/CodeGen/SystemZ/asm-05.ll | 2 +- test/CodeGen/SystemZ/asm-06.ll | 2 +- test/CodeGen/SystemZ/asm-07.ll | 2 +- test/CodeGen/SystemZ/asm-08.ll | 2 +- test/CodeGen/SystemZ/asm-09.ll | 2 +- test/CodeGen/SystemZ/asm-10.ll | 2 +- test/CodeGen/SystemZ/asm-11.ll | 2 +- test/CodeGen/SystemZ/asm-12.ll | 2 +- test/CodeGen/SystemZ/asm-13.ll | 2 +- test/CodeGen/SystemZ/asm-14.ll | 2 +- test/CodeGen/SystemZ/asm-15.ll | 2 +- test/CodeGen/SystemZ/asm-16.ll | 2 +- test/CodeGen/SystemZ/asm-17.ll | 2 +- test/CodeGen/SystemZ/asm-18.ll | 2 +- test/CodeGen/SystemZ/fp-cmp-04.ll | 2 +- test/CodeGen/SystemZ/int-cmp-44.ll | 2 +- test/CodeGen/SystemZ/int-cmp-45.ll | 2 +- test/CodeGen/SystemZ/memchr-02.ll | 2 +- 23 files changed, 24 insertions(+), 22 deletions(-) diff --git a/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp b/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp index 35887faef83..0161d6263e7 100644 --- a/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp +++ b/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp @@ -24,4 +24,6 @@ SystemZMCAsmInfo::SystemZMCAsmInfo(StringRef TT) { UsesELFSectionDirectiveForBSS = true; SupportsDebugInformation = true; ExceptionsType = ExceptionHandling::DwarfCFI; + + UseIntegratedAssembler = true; } diff --git a/test/CodeGen/SystemZ/asm-01.ll b/test/CodeGen/SystemZ/asm-01.ll index 801378c5fcb..3dbc8ac268b 100644 --- a/test/CodeGen/SystemZ/asm-01.ll +++ b/test/CodeGen/SystemZ/asm-01.ll @@ -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) { diff --git a/test/CodeGen/SystemZ/asm-02.ll b/test/CodeGen/SystemZ/asm-02.ll index ad1e35bb362..458bfeb4975 100644 --- a/test/CodeGen/SystemZ/asm-02.ll +++ b/test/CodeGen/SystemZ/asm-02.ll @@ -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) { diff --git a/test/CodeGen/SystemZ/asm-03.ll b/test/CodeGen/SystemZ/asm-03.ll index fa3e1a7d01d..2e60ad61ef4 100644 --- a/test/CodeGen/SystemZ/asm-03.ll +++ b/test/CodeGen/SystemZ/asm-03.ll @@ -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: diff --git a/test/CodeGen/SystemZ/asm-04.ll b/test/CodeGen/SystemZ/asm-04.ll index af7ea9fdef9..b212253dbd9 100644 --- a/test/CodeGen/SystemZ/asm-04.ll +++ b/test/CodeGen/SystemZ/asm-04.ll @@ -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: diff --git a/test/CodeGen/SystemZ/asm-05.ll b/test/CodeGen/SystemZ/asm-05.ll index e18cb757b14..db99b10853e 100644 --- a/test/CodeGen/SystemZ/asm-05.ll +++ b/test/CodeGen/SystemZ/asm-05.ll @@ -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: diff --git a/test/CodeGen/SystemZ/asm-06.ll b/test/CodeGen/SystemZ/asm-06.ll index f9848a2df6f..73c938f9fcf 100644 --- a/test/CodeGen/SystemZ/asm-06.ll +++ b/test/CodeGen/SystemZ/asm-06.ll @@ -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: diff --git a/test/CodeGen/SystemZ/asm-07.ll b/test/CodeGen/SystemZ/asm-07.ll index bf63150cd81..42b89e6115b 100644 --- a/test/CodeGen/SystemZ/asm-07.ll +++ b/test/CodeGen/SystemZ/asm-07.ll @@ -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: diff --git a/test/CodeGen/SystemZ/asm-08.ll b/test/CodeGen/SystemZ/asm-08.ll index 166233752db..4185108e73c 100644 --- a/test/CodeGen/SystemZ/asm-08.ll +++ b/test/CodeGen/SystemZ/asm-08.ll @@ -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: diff --git a/test/CodeGen/SystemZ/asm-09.ll b/test/CodeGen/SystemZ/asm-09.ll index 5cd7efb9400..b9d86cfbfeb 100644 --- a/test/CodeGen/SystemZ/asm-09.ll +++ b/test/CodeGen/SystemZ/asm-09.ll @@ -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: diff --git a/test/CodeGen/SystemZ/asm-10.ll b/test/CodeGen/SystemZ/asm-10.ll index 0eccc197218..b71db835078 100644 --- a/test/CodeGen/SystemZ/asm-10.ll +++ b/test/CodeGen/SystemZ/asm-10.ll @@ -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: diff --git a/test/CodeGen/SystemZ/asm-11.ll b/test/CodeGen/SystemZ/asm-11.ll index 8aeb784134a..8a4cdbb6a93 100644 --- a/test/CodeGen/SystemZ/asm-11.ll +++ b/test/CodeGen/SystemZ/asm-11.ll @@ -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() { diff --git a/test/CodeGen/SystemZ/asm-12.ll b/test/CodeGen/SystemZ/asm-12.ll index feecbacf09e..115092cb6aa 100644 --- a/test/CodeGen/SystemZ/asm-12.ll +++ b/test/CodeGen/SystemZ/asm-12.ll @@ -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() { diff --git a/test/CodeGen/SystemZ/asm-13.ll b/test/CodeGen/SystemZ/asm-13.ll index b88170079ec..83454eab1cb 100644 --- a/test/CodeGen/SystemZ/asm-13.ll +++ b/test/CodeGen/SystemZ/asm-13.ll @@ -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() { diff --git a/test/CodeGen/SystemZ/asm-14.ll b/test/CodeGen/SystemZ/asm-14.ll index bcd8b1ebc3d..41b8f40e09d 100644 --- a/test/CodeGen/SystemZ/asm-14.ll +++ b/test/CodeGen/SystemZ/asm-14.ll @@ -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() { diff --git a/test/CodeGen/SystemZ/asm-15.ll b/test/CodeGen/SystemZ/asm-15.ll index 886ee0e897d..8361b684992 100644 --- a/test/CodeGen/SystemZ/asm-15.ll +++ b/test/CodeGen/SystemZ/asm-15.ll @@ -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() { diff --git a/test/CodeGen/SystemZ/asm-16.ll b/test/CodeGen/SystemZ/asm-16.ll index 886ee0e897d..8361b684992 100644 --- a/test/CodeGen/SystemZ/asm-16.ll +++ b/test/CodeGen/SystemZ/asm-16.ll @@ -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() { diff --git a/test/CodeGen/SystemZ/asm-17.ll b/test/CodeGen/SystemZ/asm-17.ll index 7bc9da32ea9..533b5e90d62 100644 --- a/test/CodeGen/SystemZ/asm-17.ll +++ b/test/CodeGen/SystemZ/asm-17.ll @@ -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() { diff --git a/test/CodeGen/SystemZ/asm-18.ll b/test/CodeGen/SystemZ/asm-18.ll index d60654b7863..71e145a285f 100644 --- a/test/CodeGen/SystemZ/asm-18.ll +++ b/test/CodeGen/SystemZ/asm-18.ll @@ -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) { diff --git a/test/CodeGen/SystemZ/fp-cmp-04.ll b/test/CodeGen/SystemZ/fp-cmp-04.ll index 781a3beb4d4..1637ccb0791 100644 --- a/test/CodeGen/SystemZ/fp-cmp-04.ll +++ b/test/CodeGen/SystemZ/fp-cmp-04.ll @@ -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) diff --git a/test/CodeGen/SystemZ/int-cmp-44.ll b/test/CodeGen/SystemZ/int-cmp-44.ll index f065e642129..30c1c4f1ed6 100644 --- a/test/CodeGen/SystemZ/int-cmp-44.ll +++ b/test/CodeGen/SystemZ/int-cmp-44.ll @@ -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() diff --git a/test/CodeGen/SystemZ/int-cmp-45.ll b/test/CodeGen/SystemZ/int-cmp-45.ll index 9c9c49c05df..c9affa672d5 100644 --- a/test/CodeGen/SystemZ/int-cmp-45.ll +++ b/test/CodeGen/SystemZ/int-cmp-45.ll @@ -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. diff --git a/test/CodeGen/SystemZ/memchr-02.ll b/test/CodeGen/SystemZ/memchr-02.ll index 982b3964f19..8986627a605 100644 --- a/test/CodeGen/SystemZ/memchr-02.ll +++ b/test/CodeGen/SystemZ/memchr-02.ll @@ -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) -- 2.34.1