Skip to content

array_reverse fails with clang >=6 + AVX + -O2

Submitted by Gael Guennebaud @ggael

Assigned to Nobody

Link to original bugzilla bug (#1684)
Version: 3.4 (development)

Description

Since the following changeset:

83309068

the unit test array_reverse_3 (and 4) fail at runtime line 113 with clang 6 and 7 with -O2 (or -O3) and AVX (or above).

This is the call to rowwise().reverseInPlace() which is failing (line 112).

This error is very suspicious because the above changeset is only adding a few "inline" and it is impossible to reproduce it on a standalone test. For instance, only one of following changes is enough to silent the issue:

  • add exit(0); line 114 of array_reverse.cpp
  • make reverseInPlace() no-inline

Blocking

#814 (closed)

Edited by David Tellenbach