Skip to content

Fix deadlock when the compiler crashes internally#4913

Open
connorjward wants to merge 4 commits intoreleasefrom
connorjward/compiler-hell
Open

Fix deadlock when the compiler crashes internally#4913
connorjward wants to merge 4 commits intoreleasefrom
connorjward/compiler-hell

Conversation

@connorjward
Copy link
Contributor

Changes

  • Prevent compiler errors from causing a deadlock
  • Print out compiler errors when running CI as the log files aren't available
  • Disable -ffast-math for GCC to fix internal compiler error on CI runners
  • Re-enable skipped IO tests

Closes #4819

What happened

In #4911 I have been investigating a very tricky timeout bug. I finally tracked it down to the following compiler error:

during GIMPLE pass: slp
mfe.c: In function 'expression_kernel':
mfe.c:8:13: internal compiler error: Floating point exception
    8 | static void expression_kernel(double complex *__restrict__ A, double complex const *__restrict__ w_0, double complex const *__restrict__ w_1)
      |             ^~~~~~~~~~~~~~~~~
0x108d932 internal_error(char const*, ...)
        ???:0
0x172411d vect_slp_analyze_operations(vec_info*)
        ???:0
0x13f916a vect_slp_function(function*)
        ???:0

This would only happen on the CI runners. On my workstation with the same Docker image things ran fine. Disabling fast math fixes it.

* Prevent compiler errors from causing a deadlock
* Disable -ffast-math for GCC to fix internal compiler error on CI
  runners
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant