iains / gcc-darwin-arm64

GCC master branch for Darwin with experimental support for Arm64. Currently GCC-15.0.0 [October 2024]
GNU General Public License v2.0
269 stars 34 forks source link

Test results for the branch #30

Open iains opened 4 years ago

iains commented 4 years ago

I'll post test results onto this "issue"

(it's not really appropriate to post them to gcc-testresults yet, since this is 'out of tree')

summ-aarch64-darwin20-branch-on-r11-4586.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-4818.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-5028.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-5235.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-5509.txt

iains commented 3 years ago

We now have configuration support for Darwin20 / macOS 11 and aarch64 Darwin in the GCC-11 tree. A long way still to go, but ...

summ-aarch64-darwin20-branch-on-r11-5758.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-5955.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-6268.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-6339.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-6409.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-6561-xc12-3.txt

NOTE: the results for x86_64-darwin20 using Rosetta2 (on A12Z DTK).

summ-x86_64-r2-darwin20-branch-on-r11-6561-xc12-3.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-6745.txt

x86_64 - Rosetta 2

summ-x86_64-r2-darwin20-branch-on-r11-6745-xc12-3.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-6876.txt

x86_64 - Rosetta 2

summ-x86_64-r2-darwin20-branch-on-r11-6876.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-6992.txt

x86_64 - Rosetta 2

summ-x86_64-r2-darwin20-branch-on-r11-6992.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-7129.txt

x86_64 - Rosetta 2

summ-x86_64-r2-darwin20-branch-on-r11-7129.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-7238.txt

x86_64 - Rosetta 2

summ-x86_64-r2-darwin20-branch-on-r11-7238.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-7308.txt

x86_64 - Rosetta 2

summ-x86_64-r2-darwin20-branch-on-r11-7308.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-7425.txt

x86_64 - Rosetta 2

summ-x86_64-r2-darwin20-branch-on-r11-7425.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-7538.txt

x86_64 - Rosetta 2

summ-x86_64-r2-darwin20-branch-on-r11-7538.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-7652.txt x86_64 - Rosetta 2 summ-x86_64-r2-darwin20-branch-on-r11-7652-native.txt

iains commented 3 years ago

first results from an actual M1 box;

summ-aarch64-darwin20-branch-on-r11-7747.txt

(since the machine is shared, I'm going to omit the rosetta2 testing for now)

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-7872.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-7975.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-8119.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r11-8229.txt

iains commented 3 years ago

bit of a gap here (for various reasons). This is rebased onto GCC12 master.
(the 11.1 version is here : https://github.com/iains/gcc-11-branch/tree/gcc-11-1rc2-apple-si)

summ-aarch64-darwin20-branch-on-r12-1828.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r12-1994.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r12-2380.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r12-2648.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r12-2906.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r12-3052.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r12-3218.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r12-3354.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r12-3886.txt

iains commented 3 years ago

summ-aarch64-darwin20-branch-on-r12-4792.txt

iains commented 2 years ago

summ-aarch64-darwin20-branch-on-r12-4799.txt

iains commented 2 years ago

summ-aarch64-darwin20-branch-on-r12-4968.txt

iains commented 2 years ago

summ-aarch64-darwin20-branch-on-r12-5219.txt

iains commented 2 years ago

summ-aarch64-darwin20-branch-on-r12-5427.txt

iains commented 2 years ago

(with mdynamic-no-pic fix) summ-aarch64-darwin20-branch-on-r12-5555-b.txt

fxcoudert commented 2 years ago

Test results for master-wip-apple-si at 1cd4f4450ffbf734baf3e427f2d6e1d2e83e9c0e on aarch64-apple-darwin21.1.0 summary.txt

iains commented 2 years ago

Test results for master-wip-apple-si at 1cd4f44 on aarch64-apple-darwin21.1.0 summary.txt

thanks for running these! The results for libstdc++ look rather odd. I guess you don't have an Ada bootstrap compiler ?

fxcoudert commented 2 years ago

you don't have an Ada bootstrap compiler

No.

The results for libstdc++ look rather odd.

Rerunning, I think some weird error happened the first time. Parallel make check sometimes gives me trouble :(

        === libstdc++ tests ===

Running target unix
FAIL: 18_support/nested_exception/rethrow_if_nested.cc execution test
FAIL: experimental/simd/standard_abi_usable.cc -O2 -Wno-psabi (test for excess errors)
FAIL: experimental/simd/standard_abi_usable_2.cc -O2 -Wno-psabi (test for excess errors)

        === libstdc++ Summary ===

# of expected passes        14038
# of unexpected failures    3
# of expected failures      95
# of unsupported tests      785
fxcoudert commented 2 years ago

The rethrow_if_nested.cc one is new. Reduces to this:

meau /tmp/irun $ cat rethrow_if_nested.cc 
#include <exception>

struct derived : std::nested_exception { };

int main(void) 
{
  try
  {
    throw 42;
  }
  catch (...)
  {
    derived d;
    try
    {
      std::rethrow_if_nested(d);
    }
    catch (const int& i)
    {
      ;
    }
  }
}
meau /tmp/irun $ ./bin/g++ -std=c++11 rethrow_if_nested.cc -g && ./a.out
libc++abi: terminating
zsh: abort      ./a.out

and the backtrace:

(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x00000001a3a219b8 libsystem_kernel.dylib`__pthread_kill + 8
    frame #1: 0x00000001a3a5515c libsystem_pthread.dylib`pthread_kill + 288
    frame #2: 0x00000001a3992314 libsystem_c.dylib`abort + 164
    frame #3: 0x00000001a3a11b50 libc++abi.dylib`abort_message + 132
    frame #4: 0x00000001a3a02e4c libc++abi.dylib`demangling_terminate_handler() + 52
    frame #5: 0x00000001a3a10ee4 libc++abi.dylib`std::__terminate(void (*)()) + 20
    frame #6: 0x00000001a3a10e6c libc++abi.dylib`std::terminate() + 44
    frame #7: 0x00000001a39a42a4 libc++.1.dylib`std::nested_exception::rethrow_nested() const + 44
    frame #8: 0x0000000100003bcc a.out`_ZSt24__rethrow_if_nested_implI7derivedENSt9enable_ifIXsrSt6__and_IJSt14is_polymorphicIT_ESt5__or_IJSt6__not_ISt10is_base_ofISt16nested_exceptionS4_EESt14is_convertibleIPS4_PS9_EEEEE5valueEvE4typeEPKS4_(__ptr=0x000000016fdff608) at nested_exception.h:146:26
    frame #9: 0x0000000100003b84 a.out`void std::rethrow_if_nested<derived>(__ex=0x000000016fdff608) at nested_exception.h:160:36
    frame #10: 0x0000000100003b1c a.out`main at rethrow_if_nested.cc:16:29
    frame #11: 0x00000001000150f4 dyld`start + 520
iains commented 2 years ago

new == a new test that fails ? or a regression? (and do we know if it fails on aarch64-linux, or just on darwin?)

fxcoudert commented 2 years ago

Old test, fails with for master-wip-apple-si at 1cd4f44 on aarch64-apple-darwin21.1.0, didn't fail for your runs before, and does not fail on aarch64-linux as far as I can see in the latest gcc-testresults posts).

iains commented 2 years ago

OK, although my tests were run on Darwin20.4 - I guess we should see if this is still failing on latest sources (unfortunately, gcc304 is still off-line).

iains commented 2 years ago

summ-aarch64-darwin20-branch-on-r12-5709.txt

iains commented 2 years ago

summ-aarch64-darwin20-branch-on-r12-6053.txt

fxcoudert commented 2 years ago

We can silence a bunch of tests that have to do with section anchors:

diff --git a/gcc/testsuite/gcc.dg/pr26427.c b/gcc/testsuite/gcc.dg/pr26427.c
index add13ca209e..2c09f28195d 100644
--- a/gcc/testsuite/gcc.dg/pr26427.c
+++ b/gcc/testsuite/gcc.dg/pr26427.c
@@ -1,4 +1,4 @@
-/* { dg-warning "this target does not support" "" {target *86*-*-darwin* } 0 } */
+/* { dg-warning "this target does not support" "" {target *86*-*-darwin* aarch64-*-darwin* } 0 } */
 /* { dg-do run { target { *-*-darwin* } } } */
 /* { dg-options { -fsection-anchors -O } } */
 /* PR target/26427 */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 039125c866a..942cac35b5f 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -8391,7 +8391,7 @@ proc check_effective_target_section_anchors { } {
     return [check_cached_effective_target section_anchors {
       expr { [istarget powerpc*-*-*]
             || [istarget arm*-*-*]
-            || [istarget aarch64*-*-*] }}]
+            || ([istarget aarch64*-*-*] && ![istarget aarch64*-*-darwin*]) }}]
 }

 # Return 1 if the target supports atomic operations on "int_128" values.

This checks the static chain register, which is different on darwin:

diff --git a/gcc/testsuite/gcc.dg/cwsc1.c b/gcc/testsuite/gcc.dg/cwsc1.c
index e793e26116a..7d8b472bdf6 100644
--- a/gcc/testsuite/gcc.dg/cwsc1.c
+++ b/gcc/testsuite/gcc.dg/cwsc1.c
@@ -6,7 +6,11 @@
 #elif defined(__i386__)
 # define CHAIN  "%ecx"
 #elif defined(__aarch64__)
-# define CHAIN  "x18"
+# if defined(__APPLE__)
+#  define CHAIN  "x16"
+# else
+#  define CHAIN  "x18"
+# endif
 #elif defined(__alpha__)
 # define CHAIN  "$1"
 #elif defined(__arm__)
iains commented 2 years ago

if you have these patches on a branch, you might as well pull-RQ them - that way they are less likely to get mangled in cut & paste (if you don't have them on a branch, then cut & paste will do ;) )