[tests] Add host-byteorder-*-endian; update XFAILs of big-endian triples

Summary:
Triple components in `XFAIL` lines are tested against the target triple.
Various tests that are expected to fail on big-endian hosts are marked
as being `XFAIL` for big-endian targets. This patch corrects these tests
by having them test against a new `host-byteorder-big-endian` feature.

Reviewers: xingxue, sfertile, jasonliu

Reviewed By: xingxue

Subscribers: jvesely, nhaehnle, fedor.sergeev, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D60551

llvm-svn: 359689
This commit is contained in:
Hubert Tong 2019-05-01 15:36:18 +00:00
parent 2822221971
commit 77da182969
10 changed files with 11 additions and 9 deletions

View File

@ -2,7 +2,7 @@
// RUN: llvm-objdump -s -j .rodata %t | FileCheck --check-prefix=OBJDUMP %s
// big endian not supported
// XFAIL: powerpc-, powerpc64-, s390x, mips-, mips64-, sparc
// XFAIL: host-byteorder-big-endian
// Check that SGPR init bug on gfx803 is corrected by the assembler, setting
// GRANULATED_WAVEFRONT_SGPR_COUNT to 11.

View File

@ -4,7 +4,7 @@
// RUN: llvm-objdump -s -j .rodata %t | FileCheck --check-prefix=OBJDUMP %s
// big endian not supported
// XFAIL: powerpc-, powerpc64-, s390x, mips-, mips64-, sparc
// XFAIL: host-byteorder-big-endian
// READOBJ: Section Headers
// READOBJ: .text PROGBITS {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9]+}} AX {{[0-9]+}} {{[0-9]+}} 256

View File

@ -1,6 +1,6 @@
; RUN: opt < %s -sample-profile -sample-profile-file=%S/Inputs/gcc-simple.afdo -S | FileCheck %s
; RUN: opt < %s -passes=sample-profile -sample-profile-file=%S/Inputs/gcc-simple.afdo -S | FileCheck %s
; XFAIL: powerpc-, powerpc64-, s390x, mips-, mips64-, sparc
; XFAIL: host-byteorder-big-endian
; Original code:
;
; #include <stdlib.h>

View File

@ -4,7 +4,7 @@
; format profile.
; It is expected to fail on certain architectures as gcc profile reader does
; not work.
; XFAIL: powerpc64-, s390x, mips-, mips64-, sparc
; XFAIL: host-byteorder-big-endian
define void @test(void ()*) !dbg !3 {
%2 = alloca void ()*

View File

@ -177,6 +177,8 @@ if (config.host_ldflags.find("-m32") < 0
and any(config.llvm_host_triple.startswith(x) for x in known_arches)):
config.available_features.add("llvm-64-bits")
config.available_features.add("host-byteorder-" + sys.byteorder + "-endian")
# Others/can-execute.txt
if sys.platform not in ['win32']:
config.available_features.add('can-execute')

View File

@ -29,4 +29,4 @@ void test(id x) { // GCOV: -: [[@LINE]]:void test
int main(int argc, const char *argv[]) { test(0); }
// llvm-cov doesn't work on big endian yet
// XFAIL: powerpc-, powerpc64-, s390x, mips-, mips64-, sparc
// XFAIL: host-byteorder-big-endian

View File

@ -27,4 +27,4 @@ int main(int argc, const char *argv[]) { // GCOV: -: [[@LINE]]:int main(
} // GCOV: -: [[@LINE]]:}
// llvm-cov doesn't work on big endian yet
// XFAIL: powerpc-, powerpc64-, s390x, mips-, mips64-, sparc
// XFAIL: host-byteorder-big-endian

View File

@ -120,4 +120,4 @@ RUN: llvm-cov gcov test.c -gcda=test_func_checksum_fail.gcda
RUN: llvm-cov gcov test_exit_block_arcs.c 2>&1 | FileCheck %s -check-prefix=EXIT_BLOCK_ARCS
EXIT_BLOCK_ARCS: (main) has arcs from exit block.
XFAIL: powerpc-, powerpc64-, s390x, mips-, mips64-, sparc
XFAIL: host-byteorder-big-endian

View File

@ -26,4 +26,4 @@ int main(int argc, const char *argv[]) { // GCOV: 1: [[@LINE]]:int main(
} // GCOV: -: [[@LINE]]:}
// llvm-cov doesn't work on big endian yet
// XFAIL: powerpc-, powerpc64-, s390x, mips-, mips64-, sparc
// XFAIL: host-byteorder-big-endian

View File

@ -1,7 +1,7 @@
The input gcov file has been generated on a little endian machine. Expect
failures on big endian systems.
XFAIL: powerpc-, powerpc64-, s390x, mips-, mips64-, sparc
XFAIL: host-byteorder-big-endian
Tests for sample profiles encoded in GCC's gcov format.