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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2017-03-13
     Ever confirmed|0                           |1

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
Ok, problem is that we decide to ipa split for ifunc resolver function:

(gdb) p cur_node->debug()
bar._GLOBAL___foo.resolver/7 (bar._GLOBAL___foo.resolver) @0x7ffff69baa10
  Type: function definition analyzed
  Visibility: force_output externally_visible public artificial
  References: bar.avx512f.3/5 (addr)bar.avx2.2/4 (addr)bar.avx.0/2 (addr)bar/1
(addr)
  Referring: bar._GLOBAL___foo.ifunc/6 (alias)
  Availability: available
  Profile id: 1947992333
  First run: 0
  Function flags: body
  Called by: 
  Calls: __builtin_cpu_supports/9 (1.00 per call) __builtin_cpu_supports/9
(1.00 per call) __builtin_cpu_supports/9 (1.00 per call) __builtin_cpu_init/8
(1.00 per call) 
$1 = void

As we run with -profile-use without having any profile, the function does
absent a profile. Honza, what's proper fix for that? Should a pass do guessed
profile for the resolver, or is the assert too strict?

Reply via email to