kbarton created this revision.
kbarton added reviewers: power-llvm-team, hfinkel, echristo, rsmith.
Herald added a subscriber: nemanjai.

This is the clang counterpart to the patch posted in 
https://reviews.llvm.org/D50988.

The patch removes Darwin support from the POWER backend. A similar approach 
will be taken for the relevant code in Clang. Once the initial patch lands, 
cleanup of the old PPC-specific Darwin paths can be done on demand, using 
post-commit reviews whenever possible.


https://reviews.llvm.org/D50989

Files:
  clang/test/CodeGen/bool_test.c
  clang/test/CodeGen/darwin-ppc-varargs.c
  clang/test/CodeGen/darwin-string-literals.c
  clang/test/CodeGen/target-data.c
  clang/test/CodeGenCXX/mangle-long-double.cpp
  clang/test/Coverage/targets.c

Index: clang/test/Coverage/targets.c
===================================================================
--- clang/test/Coverage/targets.c
+++ clang/test/Coverage/targets.c
@@ -5,9 +5,7 @@
 // RUN: %clang_cc1 -debug-info-kind=limited -triple i686-unknown-dragonfly -emit-llvm -o %t %s
 // RUN: %clang_cc1 -debug-info-kind=limited -triple i686-unknown-unknown -emit-llvm -o %t %s
 // RUN: %clang_cc1 -debug-info-kind=limited -triple i686-unknown-win32 -emit-llvm -o %t %s
-// RUN: %clang_cc1 -debug-info-kind=limited -triple powerpc-apple-darwin9 -emit-llvm -o %t %s
 // RUN: %clang_cc1 -debug-info-kind=limited -triple powerpc-unknown-unknown -emit-llvm -o %t %s
-// RUN: %clang_cc1 -debug-info-kind=limited -triple powerpc64-apple-darwin9 -emit-llvm -o %t %s
 // RUN: %clang_cc1 -debug-info-kind=limited -triple powerpc64-unknown-unknown -emit-llvm -o %t %s
 // RUN: %clang_cc1 -debug-info-kind=limited -triple sparc-unknown-solaris -emit-llvm -o %t %s
 // RUN: %clang_cc1 -debug-info-kind=limited -triple sparc-unknown-unknown -emit-llvm -o %t %s
Index: clang/test/CodeGenCXX/mangle-long-double.cpp
===================================================================
--- clang/test/CodeGenCXX/mangle-long-double.cpp
+++ clang/test/CodeGenCXX/mangle-long-double.cpp
@@ -1,12 +1,8 @@
 // RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu %s -emit-llvm -o - | FileCheck %s --check-prefix=POWER64-LINUX
 // RUN: %clang_cc1 -triple powerpc-unknown-linux-gnu   %s -emit-llvm -o - | FileCheck %s --check-prefix=POWER-LINUX
-// RUN: %clang_cc1 -triple powerpc64-apple-darwin9     %s -emit-llvm -o - | FileCheck %s --check-prefix=POWER64-DARWIN
-// RUN: %clang_cc1 -triple powerpc-apple-darwin9       %s -emit-llvm -o - | FileCheck %s --check-prefix=POWER-DARWIN
 // RUN: %clang_cc1 -triple s390x-unknown-linux-gnu     %s -emit-llvm -o - | FileCheck %s --check-prefix=S390X-LINUX
 
 void f(long double) {}
 // POWER64-LINUX:  _Z1fg
 // POWER-LINUX:    _Z1fg
-// POWER64-DARWIN: _Z1fe
-// POWER-DARWIN:   _Z1fe
 // S390X-LINUX:    _Z1fg
Index: clang/test/CodeGen/target-data.c
===================================================================
--- clang/test/CodeGen/target-data.c
+++ clang/test/CodeGen/target-data.c
@@ -106,14 +106,6 @@
 // RUN: FileCheck %s -check-prefix=PPC64LE-LINUX
 // PPC64LE-LINUX: target datalayout = "e-m:e-i64:64-n32:64"
 
-// RUN: %clang_cc1 -triple powerpc-darwin -o - -emit-llvm %s | \
-// RUN: FileCheck %s -check-prefix=PPC32-DARWIN
-// PPC32-DARWIN: target datalayout = "E-m:o-p:32:32-f64:32:64-n32"
-
-// RUN: %clang_cc1 -triple powerpc64-darwin -o - -emit-llvm %s | \
-// RUN: FileCheck %s -check-prefix=PPC64-DARWIN
-// PPC64-DARWIN: target datalayout = "E-m:o-i64:64-n32:64"
-
 // RUN: %clang_cc1 -triple nvptx-unknown -o - -emit-llvm %s | \
 // RUN: FileCheck %s -check-prefix=NVPTX
 // NVPTX: target datalayout = "e-p:32:32-i64:64-i128:128-v16:16-v32:32-n16:32:64"
Index: clang/test/CodeGen/darwin-string-literals.c
===================================================================
--- clang/test/CodeGen/darwin-string-literals.c
+++ clang/test/CodeGen/darwin-string-literals.c
@@ -5,14 +5,6 @@
 // CHECK-LSB: @.str.2 = private unnamed_addr constant [18 x i16] [i16 104, i16 101, i16 108, i16 108, i16 111, i16 32, i16 8594, i16 32, i16 9731, i16 32, i16 8592, i16 32, i16 119, i16 111, i16 114, i16 108, i16 100, i16 0], section "__TEXT,__ustring", align 2
 // CHECK-LSB: @.str.4 = private unnamed_addr constant [6 x i16] [i16 116, i16 101, i16 115, i16 116, i16 8482, i16 0], section "__TEXT,__ustring", align 2
 
-
-// RUN: %clang_cc1 -triple powerpc-apple-darwin9 -emit-llvm %s -o - | FileCheck -check-prefix CHECK-MSB %s
-
-// CHECK-MSB: @.str = private unnamed_addr constant [8 x i8] c"string0\00"
-// CHECK-MSB: @.str.1 = private unnamed_addr constant [8 x i8] c"string1\00"
-// CHECK-MSB: @.str.2 = private unnamed_addr constant [18 x i16] [i16 104, i16 101, i16 108, i16 108, i16 111, i16 32, i16 8594, i16 32, i16 9731, i16 32, i16 8592, i16 32, i16 119, i16 111, i16 114, i16 108, i16 100, i16 0], section "__TEXT,__ustring", align 2
-// CHECK-MSB: @.str.4 = private unnamed_addr constant [6 x i16] [i16 116, i16 101, i16 115, i16 116, i16 8482, i16 0], section "__TEXT,__ustring", align 2
-
 const char *g0 = "string0";
 const void *g1 = __builtin___CFStringMakeConstantString("string1");
 const void *g2 = __builtin___CFStringMakeConstantString("hello \u2192 \u2603 \u2190 world");
Index: clang/test/CodeGen/darwin-ppc-varargs.c
===================================================================
--- clang/test/CodeGen/darwin-ppc-varargs.c
+++ /dev/null
@@ -1,28 +0,0 @@
-// RUN: %clang_cc1 -triple powerpc-apple-macosx10.5.0 -target-feature +altivec -Os -emit-llvm -o - %s | FileCheck %s
-
-int f(__builtin_va_list args) { return __builtin_va_arg(args, int); }
-
-// CHECK: @f(i8* {{.*}}[[PARAM:%[a-zA-Z0-9]+]])
-// CHECK: [[BITCAST:%[0-9]+]] = bitcast i8* [[PARAM]] to i32*
-// CHECK: [[VALUE:%[0-9]+]] = load i32, i32* [[BITCAST]], align 4
-// CHECK: ret i32 [[VALUE]]
-
-void h(vector int);
-int g(__builtin_va_list args) {
-  int i = __builtin_va_arg(args, int);
-  h(__builtin_va_arg(args, vector int));
-  int j = __builtin_va_arg(args, int);
-  return i + j;
-}
-
-// CHECK: @g(i8* {{.*}}[[PARAM:%[a-zA-Z0-9]+]])
-// CHECK: [[NEXT:%[-_.a-zA-Z0-9]+]] = getelementptr inbounds i8, i8* [[PARAM]], i32 4
-// CHECK: [[BITCAST:%[0-9]+]] = bitcast i8* [[PARAM]] to i32*
-// CHECK: [[LOAD:%[0-9]+]] = load i32, i32* [[BITCAST]], align 4
-// CHECK: [[PTRTOINT:%[0-9]+]] = ptrtoint i8* [[NEXT]] to i32
-// CHECK: [[ADD:%[0-9]+]] = add i32 [[PTRTOINT]], 15
-// CHECK: [[AND:%[0-9]+]] = and i32 [[ADD]], -16
-// CHECK: [[INTTOPTR:%[0-9]+]] = inttoptr i32 [[AND]] to <4 x i32>*
-// CHECK: [[ARG:%[0-9]]] = load <4 x i32>, <4 x i32>* [[INTTOPTR]], align 16
-// CHECK: call void @h(<4 x i32> [[ARG]]
-
Index: clang/test/CodeGen/bool_test.c
===================================================================
--- clang/test/CodeGen/bool_test.c
+++ clang/test/CodeGen/bool_test.c
@@ -1,18 +1,18 @@
 // REQUIRES: powerpc-registered-target
-// RUN: %clang_cc1 -triple powerpc-apple-macosx10.4.0 -emit-llvm -o - %s -O2 -disable-llvm-passes | FileCheck %s
+// RUN: %clang_cc1 -triple powerpc-unknown-linux-gnu -emit-llvm -o - %s -O2 -disable-llvm-passes | FileCheck %s
 
 int boolsize = sizeof(_Bool);
-// CHECK: boolsize = global i32 4, align 4
+// CHECK: boolsize = global i32 1, align 4
 
 void f(_Bool *x, _Bool *y) {
   *x = *y;
 }
 
 // CHECK-LABEL: define void @f(
-// CHECK: [[FROMMEM:%.*]] = load i32, i32* %
-// CHECK: [[BOOLVAL:%.*]] = trunc i32 [[FROMMEM]] to i1
-// CHECK: [[TOMEM:%.*]] = zext i1 [[BOOLVAL]] to i32
-// CHECK: store i32 [[TOMEM]]
+// CHECK: [[FROMMEM:%.*]] = load i8, i8* %
+// CHECK: [[BOOLVAL:%.*]] = trunc i8 [[FROMMEM]] to i1
+// CHECK: [[TOMEM:%.*]] = zext i1 [[BOOLVAL]] to i8
+// CHECK: store i8 [[TOMEM]]
 // CHECK: ret void
 
-// CHECK:  i32 0, i32 2}
+// CHECK:  i8 0, i8 2}
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to