terralang / terra

Terra is a low-level system programming language that is embedded in and meta-programmed by the Lua programming language.
terralang.org
Other
2.71k stars 197 forks source link

Add CI for AArch64 via Cirrus #596

Closed elliottslaughter closed 2 years ago

elliottslaughter commented 2 years ago

Does not pass yet, so I won't merge, but this PR can be used to track pass rate for ARM on actual hardware (whereas emulation seems to suffer from additional failures beyond what ARM hardware experiences).

elliottslaughter commented 2 years ago

Failure rate drops dramatically with LLVM 11.1.0:

99% tests passed, 4 tests failed out of 549
Total Test time (real) =  25.95 sec
The following tests FAILED:
     65 - class.t (Failed)
     70 - class6.t (Failed)
     90 - coverage3.t (Failed)
    417 - vecobj.t (Failed)

I suspect we're starting to feel the pressure from not having #485.

elliottslaughter commented 2 years ago

All tests are now fixed when running on ARM hardware in Linux.

In emulation, I see a segfault in atomicrmw.t but otherwise get all passing tests. Note that this is using LLVM 11.1.0 to work around #597.