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

Alexander Monakov <amonakov at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |amonakov at gcc dot gnu.org

--- Comment #9 from Alexander Monakov <amonakov at gcc dot gnu.org> ---
I can reproduce it with gcc-10.2. Why is main 'overwritable', but foo is
'available'?

cat /tmp/cchaUSjV.ltrans0.o.079i.inline

;; Function main (main, funcdef_no=0, decl_uid=4385, cgraph_uid=1,
symbol_order=1) (executed once)

weakdef.c:5:5: note: Inlining foo/0 to main/1 with frequency 1.00
foo/0 (foo) @0x7f51a512d168
  Type: function definition analyzed
  Visibility: preempted_reg external public weak
  References:
  Referring:
  Function foo/0 is inline copy in main/1
  Availability: available
  Unit id: 2
  Function flags: count:1073741824 (estimated locally) body nonfreeing_fn
  Called by: main/1 (inlined) (1073741824 (estimated locally),1.00 per call)
  Calls:
main/1 (main) @0x7f51a512d000
  Type: function definition analyzed
  Visibility: externally_visible prevailing_def public
  References:
  Referring:
  Availability: overwritable
  Unit id: 2
  Function flags: count:1073741824 (estimated locally) body
only_called_at_startup nonfreeing_fn executed_once
  Called by:
  Calls: foo/0 (inlined) (1073741824 (estimated locally),1.00 per call)

Reply via email to