nemanjai created this revision.
nemanjai added reviewers: PowerPC, dim.
Herald added subscribers: steven.zhang, shchenz, kbarton.
nemanjai requested review of this revision.
Herald added a project: clang.

Since XLC only ever shipped on PowerPC AIX and Linux, it is not reasonable to 
provide the compatibility macros on any target other than those two. This patch 
restricts those macros to AIX/Linux.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D110213

Files:
  clang/lib/Basic/Targets/PPC.cpp
  clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond-64bit-only.c
  clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond.c
  clang/test/CodeGen/builtins-ppc-xlcompat-cas.c
  clang/test/CodeGen/builtins-ppc-xlcompat-cipher.c
  clang/test/CodeGen/builtins-ppc-xlcompat-cmplx.c
  clang/test/CodeGen/builtins-ppc-xlcompat-compare.c
  clang/test/CodeGen/builtins-ppc-xlcompat-conversionfunc.c
  clang/test/CodeGen/builtins-ppc-xlcompat-darn.c
  clang/test/CodeGen/builtins-ppc-xlcompat-error.c
  clang/test/CodeGen/builtins-ppc-xlcompat-expect.c
  clang/test/CodeGen/builtins-ppc-xlcompat-fetch.c
  clang/test/CodeGen/builtins-ppc-xlcompat-fp.c
  clang/test/CodeGen/builtins-ppc-xlcompat-load-store-reversed-64bit-only.c
  clang/test/CodeGen/builtins-ppc-xlcompat-load-store-reversed.c
  clang/test/CodeGen/builtins-ppc-xlcompat-macros.c
  clang/test/CodeGen/builtins-ppc-xlcompat-math.c
  clang/test/CodeGen/builtins-ppc-xlcompat-move-tofrom-regs.c
  clang/test/CodeGen/builtins-ppc-xlcompat-multiply-64bit-only.c
  clang/test/CodeGen/builtins-ppc-xlcompat-multiply.c
  clang/test/CodeGen/builtins-ppc-xlcompat-popcnt.c
  clang/test/CodeGen/builtins-ppc-xlcompat-prefetch.c
  clang/test/CodeGen/builtins-ppc-xlcompat-pwr8.c
  clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-64bit.c
  clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-error.c
  clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-warning.c
  clang/test/CodeGen/builtins-ppc-xlcompat-pwr9.c
  clang/test/CodeGen/builtins-ppc-xlcompat-rotate.c
  clang/test/CodeGen/builtins-ppc-xlcompat-stfiw.c
  clang/test/CodeGen/builtins-ppc-xlcompat-swdiv_nochk.c
  clang/test/CodeGen/builtins-ppc-xlcompat-sync.c
  clang/test/CodeGen/builtins-ppc-xlcompat-trap-64bit-only.c
  clang/test/CodeGen/builtins-ppc-xlcompat-trap.c
  clang/test/CodeGen/builtins-ppc-xlcompat-vec-error.c
  clang/test/CodeGen/builtins-ppc-xlcompat.c

Index: clang/test/CodeGen/builtins-ppc-xlcompat.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat.c
@@ -1,9 +1,9 @@
 // REQUIRES: powerpc-registered-target
 // RUN: %clang_cc1 -target-feature +altivec -target-feature +vsx \
-// RUN:   -triple powerpc64-unknown-unknown -emit-llvm %s -o - \
+// RUN:   -triple powerpc64-unknown-linux-gnu -emit-llvm %s -o - \
 // RUN:   -D__XL_COMPAT_ALTIVEC__ -target-cpu pwr7 | FileCheck %s
 // RUN: %clang_cc1 -target-feature +altivec -target-feature +vsx \
-// RUN:   -triple powerpc64le-unknown-unknown -emit-llvm %s -o - \
+// RUN:   -triple powerpc64le-unknown-linux-gnu -emit-llvm %s -o - \
 // RUN:   -D__XL_COMPAT_ALTIVEC__ -target-cpu pwr8 | FileCheck %s
 #include <altivec.h>
 vector double vd = { 3.4e22, 1.8e-3 };
Index: clang/test/CodeGen/builtins-ppc-xlcompat-vec-error.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-vec-error.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-vec-error.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -fsyntax-only \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -fsyntax-only \
 // RUN:   -target-cpu pwr8 -Wall -Werror -verify %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown -fsyntax-only \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -fsyntax-only \
 // RUN:   -target-cpu pwr8 -Wall -Werror -verify %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix -fsyntax-only \
 // RUN:   -target-cpu pwr8 -Wall -Werror -verify %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-trap.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-trap.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-trap.c
@@ -1,8 +1,8 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | \
 // RUN:  FileCheck %s
-// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | \
 // RUN:  FileCheck %s
 // RUN: %clang_cc1 -O2 -triple powerpc-unknown-aix \
Index: clang/test/CodeGen/builtins-ppc-xlcompat-trap-64bit-only.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-trap-64bit-only.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-trap-64bit-only.c
@@ -1,8 +1,8 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | \
 // RUN:  FileCheck %s --check-prefixes=CHECK64
-// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | \
 // RUN:  FileCheck %s --check-prefixes=CHECK64
 // RUN: not %clang_cc1 -O2 -triple powerpc-unknown-aix \
Index: clang/test/CodeGen/builtins-ppc-xlcompat-sync.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-sync.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-sync.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-swdiv_nochk.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-swdiv_nochk.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-swdiv_nochk.c
@@ -1,5 +1,5 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-stfiw.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-stfiw.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-stfiw.c
@@ -1,6 +1,6 @@
-// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -O2 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-rotate.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-rotate.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-rotate.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-pwr9.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-pwr9.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-pwr9.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -emit-llvm %s \
 // RUN:   -target-cpu pwr9 -o - | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -emit-llvm %s \
 // RUN:   -target-cpu pwr9 -o - | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix -emit-llvm %s \
 // RUN:   -target-cpu pwr9 -o - | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-warning.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-warning.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-warning.c
@@ -1,5 +1,5 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -target-cpu pwr9 \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -target-cpu pwr9 \
 // RUN:   -verify %s
 
 extern unsigned long long ull;
Index: clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-error.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-error.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-error.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -target-cpu pwr9 \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -target-cpu pwr9 \
 // RUN:   -fsyntax-only -Wall -Werror -verify %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown -target-cpu pwr9 \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -target-cpu pwr9 \
 // RUN:   -fsyntax-only -Wall -Werror -verify %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix -target-cpu pwr9 \
 // RUN:   -fsyntax-only -Wall -Werror -verify %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-64bit.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-64bit.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-pwr9-64bit.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -emit-llvm %s \
 // RUN:   -target-cpu pwr9 -o - | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -emit-llvm %s \
 // RUN:   -target-cpu pwr9 -o - | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix -emit-llvm %s \
 // RUN:   -target-cpu pwr9 -o - | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-pwr8.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-pwr8.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-pwr8.c
@@ -1,13 +1,13 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -emit-llvm %s \
 // RUN:   -target-cpu pwr8 -o - | FileCheck %s -check-prefix=CHECK-PWR8
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -emit-llvm %s \
 // RUN:   -target-cpu pwr8 -o - | FileCheck %s -check-prefix=CHECK-PWR8
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix -emit-llvm %s \
 // RUN:   -target-cpu pwr8 -o - | FileCheck %s -check-prefix=CHECK-PWR8
 // RUN: %clang_cc1 -triple powerpc-unknown-aix %s -emit-llvm %s \
 // RUN:   -target-cpu pwr8 -o - | FileCheck %s -check-prefix=CHECK-PWR8
-// RUN: not %clang_cc1 -triple powerpc64-unknown-unknown -emit-llvm %s \
+// RUN: not %clang_cc1 -triple powerpc64-unknown-linux-gnu -emit-llvm %s \
 // RUN:   -target-cpu pwr7 -o - 2>&1 | FileCheck %s -check-prefix=CHECK-NOPWR8
 // RUN: not %clang_cc1 -triple powerpc64-unknown-aix -emit-llvm %s \
 // RUN:   -target-cpu pwr7 -o - 2>&1 | FileCheck %s -check-prefix=CHECK-NOPWR8
Index: clang/test/CodeGen/builtins-ppc-xlcompat-prefetch.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-prefetch.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-prefetch.c
@@ -1,6 +1,6 @@
-// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -O2 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-popcnt.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-popcnt.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-popcnt.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-multiply.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-multiply.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-multiply.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-multiply-64bit-only.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-multiply-64bit-only.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-multiply-64bit-only.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-move-tofrom-regs.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-move-tofrom-regs.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-move-tofrom-regs.c
@@ -1,6 +1,6 @@
-// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -O2 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | \
Index: clang/test/CodeGen/builtins-ppc-xlcompat-math.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-math.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-math.c
@@ -1,6 +1,6 @@
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -emit-llvm %s \
 // RUN:   -target-cpu pwr7 -o - | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -emit-llvm %s \
 // RUN:   -target-cpu pwr8 -o - | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix -emit-llvm %s \
 // RUN:   -target-cpu pwr7 -o - | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-macros.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-macros.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-macros.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s --check-prefixes=64BIT --check-prefix=BOTH
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s --check-prefixes=64BIT --check-prefix=BOTH
 // RUN: %clang_cc1 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s --check-prefixes=32BIT --check-prefix=BOTH
Index: clang/test/CodeGen/builtins-ppc-xlcompat-load-store-reversed.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-load-store-reversed.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-load-store-reversed.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target.
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s --check-prefixes=CHECK-32B
Index: clang/test/CodeGen/builtins-ppc-xlcompat-load-store-reversed-64bit-only.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-load-store-reversed-64bit-only.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-load-store-reversed-64bit-only.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target.
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-fp.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-fp.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-fp.c
@@ -1,5 +1,5 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-fetch.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-fetch.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-fetch.c
@@ -1,8 +1,8 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
 
 // CHECK-LABEL: @test_builtin_ppc_fetch_and_add(
Index: clang/test/CodeGen/builtins-ppc-xlcompat-expect.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-expect.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-expect.c
@@ -1,13 +1,13 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -O1 -disable-llvm-passes \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -O1 -disable-llvm-passes \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr7 | FileCheck %s --check-prefix=64BIT
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown -O1 -disable-llvm-passes \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -O1 -disable-llvm-passes \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s --check-prefix=64BIT
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix -O1 -disable-llvm-passes \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr7 | FileCheck %s --check-prefix=64BIT
-// RUN: %clang_cc1 -triple powerpc-unknown-unknown -O1 -disable-llvm-passes \
+// RUN: %clang_cc1 -triple powerpc-unknown-linux-gnu -O1 -disable-llvm-passes \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr7 | FileCheck %s --check-prefix=32BIT
-// RUN: %clang_cc1 -triple powerpcle-unknown-unknown -O1 -disable-llvm-passes \
+// RUN: %clang_cc1 -triple powerpcle-unknown-linux-gnu -O1 -disable-llvm-passes \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s --check-prefix=32BIT
 // RUN: %clang_cc1 -triple powerpc-unknown-aix -O1 -disable-llvm-passes \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr7 | FileCheck %s --check-prefix=32BIT
Index: clang/test/CodeGen/builtins-ppc-xlcompat-error.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-error.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-error.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -fsyntax-only \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -fsyntax-only \
 // RUN:   -Wall -Werror -verify %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown -fsyntax-only \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -fsyntax-only \
 // RUN:   -Wall -Werror -verify %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix -fsyntax-only \
 // RUN:   -Wall -Werror -verify %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-darn.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-darn.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-darn.c
@@ -1,13 +1,13 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr9 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr9 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr9 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc-unknown-linux-gnu \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr9 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpcle-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpcle-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr9 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc-unknown-aix \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr9 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-conversionfunc.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-conversionfunc.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-conversionfunc.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
-// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -O2 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -O2 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-compare.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-compare.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-compare.c
@@ -1,7 +1,7 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s --check-prefix=CHECK-64B
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr8 | FileCheck %s --check-prefix=CHECK-64B
 // RUN: %clang_cc1 -triple powerpc-unknown-aix \
 // RUN:   -emit-llvm %s -o - -target-cpu pwr7 | FileCheck %s --check-prefix=CHECK-32B
Index: clang/test/CodeGen/builtins-ppc-xlcompat-cmplx.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-cmplx.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-cmplx.c
@@ -1,14 +1,14 @@
-// REQUIRES: powerpc-registered-target
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// REQUIRES: powerpc-registered-target
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr7 | FileCheck %s --check-prefix=64BIT
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s --check-prefix=64BITLE
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr7 | FileCheck %s --check-prefix=64BITAIX
-// RUN: %clang_cc1 -triple powerpc-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc-unknown-linux-gnu \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr7 | FileCheck %s --check-prefix=32BIT
-// RUN: %clang_cc1 -triple powerpcle-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpcle-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s --check-prefix=32BITLE
 // RUN: %clang_cc1 -triple powerpc-unknown-aix \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr7 | FileCheck %s --check-prefix=32BITAIX
@@ -175,37 +175,47 @@
 //
 // 32BIT-LABEL: @testcmplxf(
 // 32BIT-NEXT:  entry:
-// 32BIT-NEXT:    [[RETVAL:%.*]] = alloca { float, float }, align 4
 // 32BIT-NEXT:    [[REAL_ADDR:%.*]] = alloca float, align 4
 // 32BIT-NEXT:    [[IMAG_ADDR:%.*]] = alloca float, align 4
 // 32BIT-NEXT:    store float [[REAL:%.*]], float* [[REAL_ADDR]], align 4
 // 32BIT-NEXT:    store float [[IMAG:%.*]], float* [[IMAG_ADDR]], align 4
 // 32BIT-NEXT:    [[TMP0:%.*]] = load float, float* [[REAL_ADDR]], align 4
 // 32BIT-NEXT:    [[TMP1:%.*]] = load float, float* [[IMAG_ADDR]], align 4
-// 32BIT-NEXT:    [[RETVAL_REALP:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[RETVAL]], i32 0, i32 0
-// 32BIT-NEXT:    [[RETVAL_IMAGP:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[RETVAL]], i32 0, i32 1
-// 32BIT-NEXT:    store float [[TMP0]], float* [[RETVAL_REALP]], align 4
-// 32BIT-NEXT:    store float [[TMP1]], float* [[RETVAL_IMAGP]], align 4
-// 32BIT-NEXT:    [[TMP2:%.*]] = bitcast { float, float }* [[RETVAL]] to i64*
-// 32BIT-NEXT:    [[TMP3:%.*]] = load i64, i64* [[TMP2]], align 4
-// 32BIT-NEXT:    ret i64 [[TMP3]]
+// 32BIT-NEXT:    [[AGG_RESULT_REALP:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT:%.*]], i32 0, i32 0
+// 32BIT-NEXT:    [[AGG_RESULT_IMAGP:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 1
+// 32BIT-NEXT:    store float [[TMP0]], float* [[AGG_RESULT_REALP]], align 4
+// 32BIT-NEXT:    store float [[TMP1]], float* [[AGG_RESULT_IMAGP]], align 4
+// 32BIT-NEXT:    [[AGG_RESULT_REALP1:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 0
+// 32BIT-NEXT:    [[AGG_RESULT_REAL:%.*]] = load float, float* [[AGG_RESULT_REALP1]], align 4
+// 32BIT-NEXT:    [[AGG_RESULT_IMAGP2:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 1
+// 32BIT-NEXT:    [[AGG_RESULT_IMAG:%.*]] = load float, float* [[AGG_RESULT_IMAGP2]], align 4
+// 32BIT-NEXT:    [[AGG_RESULT_REALP3:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 0
+// 32BIT-NEXT:    [[AGG_RESULT_IMAGP4:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 1
+// 32BIT-NEXT:    store float [[AGG_RESULT_REAL]], float* [[AGG_RESULT_REALP3]], align 4
+// 32BIT-NEXT:    store float [[AGG_RESULT_IMAG]], float* [[AGG_RESULT_IMAGP4]], align 4
+// 32BIT-NEXT:    ret void
 //
 // 32BITLE-LABEL: @testcmplxf(
 // 32BITLE-NEXT:  entry:
-// 32BITLE-NEXT:    [[RETVAL:%.*]] = alloca { float, float }, align 4
 // 32BITLE-NEXT:    [[REAL_ADDR:%.*]] = alloca float, align 4
 // 32BITLE-NEXT:    [[IMAG_ADDR:%.*]] = alloca float, align 4
 // 32BITLE-NEXT:    store float [[REAL:%.*]], float* [[REAL_ADDR]], align 4
 // 32BITLE-NEXT:    store float [[IMAG:%.*]], float* [[IMAG_ADDR]], align 4
 // 32BITLE-NEXT:    [[TMP0:%.*]] = load float, float* [[REAL_ADDR]], align 4
 // 32BITLE-NEXT:    [[TMP1:%.*]] = load float, float* [[IMAG_ADDR]], align 4
-// 32BITLE-NEXT:    [[RETVAL_REALP:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[RETVAL]], i32 0, i32 0
-// 32BITLE-NEXT:    [[RETVAL_IMAGP:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[RETVAL]], i32 0, i32 1
-// 32BITLE-NEXT:    store float [[TMP0]], float* [[RETVAL_REALP]], align 4
-// 32BITLE-NEXT:    store float [[TMP1]], float* [[RETVAL_IMAGP]], align 4
-// 32BITLE-NEXT:    [[TMP2:%.*]] = bitcast { float, float }* [[RETVAL]] to i64*
-// 32BITLE-NEXT:    [[TMP3:%.*]] = load i64, i64* [[TMP2]], align 4
-// 32BITLE-NEXT:    ret i64 [[TMP3]]
+// 32BITLE-NEXT:    [[AGG_RESULT_REALP:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT:%.*]], i32 0, i32 0
+// 32BITLE-NEXT:    [[AGG_RESULT_IMAGP:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 1
+// 32BITLE-NEXT:    store float [[TMP0]], float* [[AGG_RESULT_REALP]], align 4
+// 32BITLE-NEXT:    store float [[TMP1]], float* [[AGG_RESULT_IMAGP]], align 4
+// 32BITLE-NEXT:    [[AGG_RESULT_REALP1:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 0
+// 32BITLE-NEXT:    [[AGG_RESULT_REAL:%.*]] = load float, float* [[AGG_RESULT_REALP1]], align 4
+// 32BITLE-NEXT:    [[AGG_RESULT_IMAGP2:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 1
+// 32BITLE-NEXT:    [[AGG_RESULT_IMAG:%.*]] = load float, float* [[AGG_RESULT_IMAGP2]], align 4
+// 32BITLE-NEXT:    [[AGG_RESULT_REALP3:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 0
+// 32BITLE-NEXT:    [[AGG_RESULT_IMAGP4:%.*]] = getelementptr inbounds { float, float }, { float, float }* [[AGG_RESULT]], i32 0, i32 1
+// 32BITLE-NEXT:    store float [[AGG_RESULT_REAL]], float* [[AGG_RESULT_REALP3]], align 4
+// 32BITLE-NEXT:    store float [[AGG_RESULT_IMAG]], float* [[AGG_RESULT_IMAGP4]], align 4
+// 32BITLE-NEXT:    ret void
 //
 // 32BITAIX-LABEL: @testcmplxf(
 // 32BITAIX-NEXT:  entry:
Index: clang/test/CodeGen/builtins-ppc-xlcompat-cipher.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-cipher.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-cipher.c
@@ -1,13 +1,13 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc64-unknown-aix \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc-unknown-linux-gnu \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpcle-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpcle-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
 // RUN: %clang_cc1 -triple powerpc-unknown-aix \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
Index: clang/test/CodeGen/builtins-ppc-xlcompat-cas.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-cas.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-cas.c
@@ -1,8 +1,8 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu \
 // RUN:    -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
-// RUN: %clang_cc1 -triple powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu \
 // RUN:   -emit-llvm %s -o -  -target-cpu pwr8 | FileCheck %s
 
 
Index: clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond.c
@@ -3,9 +3,9 @@
 // RUN:  -emit-llvm %s -o - | FileCheck %s
 // RUN: %clang_cc1 -O2 -target-cpu pwr8 -triple=powerpc64-unknown-aix \
 // RUN:  -emit-llvm %s -o - | FileCheck %s
-// RUN: %clang_cc1 -O2 -target-cpu pwr8 -triple=powerpc64le-unknown-unknown \
+// RUN: %clang_cc1 -O2 -target-cpu pwr8 -triple=powerpc64le-unknown-linux-gnu \
 // RUN:  -emit-llvm %s -o - | FileCheck %s
-// RUN: %clang_cc1 -O2 -target-cpu pwr8 -triple=powerpc64-unknown-unknown \
+// RUN: %clang_cc1 -O2 -target-cpu pwr8 -triple=powerpc64-unknown-linux-gnu \
 // RUN:  -emit-llvm %s -o - | FileCheck %s
 // RAUN: not %clang_cc1 -O2 -target-cpu pwr7 -triple=powerpc-unknown-aix \
 // RAUN:  -emit-llvm %s -o - 2>&1 | FileCheck %s \
Index: clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond-64bit-only.c
===================================================================
--- clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond-64bit-only.c
+++ clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond-64bit-only.c
@@ -3,9 +3,9 @@
 // RUN: FileCheck %s --check-prefix=CHECK32-ERROR
 // RUN: %clang_cc1 -O2 -triple=powerpc64-unknown-aix -emit-llvm %s -o - | \
 // RUN: FileCheck %s --check-prefix=CHECK64
-// RUN: %clang_cc1 -O2 -triple=powerpc64le-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -O2 -triple=powerpc64le-unknown-linux-gnu -emit-llvm %s \
 // RUN:  -o - | FileCheck %s --check-prefix=CHECK64
-// RUN: %clang_cc1 -O2 -triple=powerpc64-unknown-unknown -emit-llvm %s \
+// RUN: %clang_cc1 -O2 -triple=powerpc64-unknown-linux-gnu -emit-llvm %s \
 // RUN:  -o - | FileCheck %s --check-prefix=CHECK64
 
 long test_ldarx(volatile long* a) {
Index: clang/lib/Basic/Targets/PPC.cpp
===================================================================
--- clang/lib/Basic/Targets/PPC.cpp
+++ clang/lib/Basic/Targets/PPC.cpp
@@ -245,7 +245,10 @@
 void PPCTargetInfo::getTargetDefines(const LangOptions &Opts,
                                      MacroBuilder &Builder) const {
 
-  defineXLCompatMacros(Builder);
+  // We define the XLC compatibility macros only on AIX and Linux since XLC
+  // was never available on any other platforms.
+  if (getTriple().isOSAIX() || getTriple().isOSLinux())
+    defineXLCompatMacros(Builder);
 
   // Target identification.
   Builder.defineMacro("__ppc__");
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to