Skip to content

Register spilling with recent gcc & clang

Submitted by Gael Guennebaud @ggael

Assigned to Nobody

Link to original bugzilla bug (#1637)

Description

We have some performance regressions with recent compiler versions of both clang and gcc. The problem is bad register allocation leading to spilling. More precisely, here is what I found:

With AVX (no FMA):

  • gcc 5: OK
  • gcc >= 6: spilling in 2pX4 kernel
  • clang: OK

With AVX+FMA:

  • gcc: OK
  • clang 5: OK
  • clang >=6: spilling in 3pX4 kernel

With AVX512f(+FMA)

  • gcc: ok
  • clang: ok

Blocking

#814 (closed)

Edited by Eigen Bugzilla