--- /dev/null
+/* { dg-options "-Os -mlong-double-128" } */
+/* { dg-do compile { target rs6000-*-* powerpc-*-* } } */
+/* Make sure compiler doesn't generate [reg+reg] address mode
+ for long doubles. */
+union arg {
+ int intarg;
+ long double longdoublearg;
+};
+long double d;
+int va(int n, union arg **argtable)
+{
+ (*argtable)[n].longdoublearg = d;
+}
--- /dev/null
+/* { dg-do link } */
+/* This validates codegen for [r1+32760] on Darwin. */
+void f(char x[32688], double *y, double *z) __attribute__((noinline));
+void f(char x[32688], double *y, double *z) {}
+main() {
+ char x[32688];
+ double y, z;
+ y = z = 3.0;
+ f(x, &y, &z);
+}