https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78333

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2016-11-14
          Component|ipa                         |middle-end
            Version|unknown                     |6.2.1
            Summary|Intrinsics lack             |always-inline gnu-inline
                   |no_instrument_function      |functions break
                   |attribute and thus breaks   |-finstrument-functions
                   |-finstrument-functions      |
     Ever confirmed|0                           |1

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__,
__artificial__))
_mm_set1_ps (float __F)
{
  return __extension__ (__m128)(__v4sf){ __F, __F, __F, __F };
}

which would hint at that the issue happens for all extern always-inline
functions:

extern inline __attribute__((gnu_inline, always_inline)) int foo () { }
int main()
{
   foo ();
}

fails the same way.  Thus it's a bug of the instrumentation code.

Reply via email to