Hi,

I checked in this patch to add initialize x32 support to GCC testsuite.


H.J.
----
commit 8df1dc7ee66e767006353d5358be926261080c1a
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Sun Mar 6 09:53:16 2011 -0800

    Add initialize x32 support to GCC testsuite.

diff --git a/gcc/testsuite/ChangeLog.x32 b/gcc/testsuite/ChangeLog.x32
index 22345df..e5c6bfd 100644
--- a/gcc/testsuite/ChangeLog.x32
+++ b/gcc/testsuite/ChangeLog.x32
@@ -1,3 +1,9 @@
+2011-03-06  H.J. Lu  <hongjiu...@intel.com>
+
+       * go.test/go-test.exp (go-set-goarch): Check x32.
+
+       * lib/target-supports.exp (check_effective_target_x32): New.
+
 2011-03-02  H.J. Lu  <hongjiu...@intel.com>
 
        PR rtl-optimization/47958
diff --git a/gcc/testsuite/go.test/go-test.exp 
b/gcc/testsuite/go.test/go-test.exp
index 8945b05..9202eca 100644
--- a/gcc/testsuite/go.test/go-test.exp
+++ b/gcc/testsuite/go.test/go-test.exp
@@ -119,7 +119,8 @@ proc go-set-goarch { } {
        }
        "i?86-*-*" -
        "x86_64-*-*" {
-           if [check_effective_target_ilp32] {
+           if { [check_effective_target_ilp32]
+                && ![check_effective_target_x32] } {
                set goarch "386"
            } else {
                set goarch "amd64"
diff --git a/gcc/testsuite/lib/target-supports.exp 
b/gcc/testsuite/lib/target-supports.exp
index 36cab54..2e75e5b 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -1492,6 +1492,17 @@ proc check_effective_target_ilp32 { } {
     }]
 }
 
+# Return 1 if we're generating x32 code using default options, 0
+# otherwise.
+
+proc check_effective_target_x32 { } {
+    return [check_no_compiler_messages x32 object {
+       int dummy[sizeof (int) == 4
+                 && sizeof (void *) == 4
+                 && sizeof (long) == 4 ? 1 : -1] = { __x86_64__ };
+    }]
+}
+
 # Return 1 if we're generating 32-bit or larger integers using default
 # options, 0 otherwise.
 
diff --git a/libgomp/ChangeLog.x32 b/libgomp/ChangeLog.x32
index f0d2b59..eedac54 100644
--- a/libgomp/ChangeLog.x32
+++ b/libgomp/ChangeLog.x32
@@ -1,3 +1,7 @@
+2011-03-06  H.J. Lu  <hongjiu...@intel.com>
+
+       * lib/libgomp.exp (libgomp_init): Don't add -march=i486 for x32.
+
 2011-02-17  H.J. Lu  <hongjiu...@intel.com>
 
        * config/linux/x86/futex.h: Check __x86_64__ instead of
diff --git a/libgomp/testsuite/lib/libgomp.exp 
b/libgomp/testsuite/lib/libgomp.exp
index 0b0b608..8b6b9f3 100644
--- a/libgomp/testsuite/lib/libgomp.exp
+++ b/libgomp/testsuite/lib/libgomp.exp
@@ -141,7 +141,8 @@ proc libgomp_init { args } {
 
     # We use atomic operations in the testcases to validate results.
     if { ([istarget i?86-*-*] || [istarget x86_64-*-*])
-        && [check_effective_target_ilp32] } {
+        && [check_effective_target_ilp32]
+        && ![check_effective_target_x32] } {
        lappend ALWAYS_CFLAGS "additional_flags=-march=i486"
     }
 

Reply via email to