https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103053
Bug ID: 103053 Summary: Unexpected ".global __divti3" emitted for unsigned 128 bit division Product: gcc Version: 10.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: simonb at vmware dot com Target Milestone: --- Created attachment 51725 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51725&action=edit Preprocessed reproducer for the bug When compiling the attached reproducer which contains an unsigned 128 bit divide with any of gcc 7.5.0, 9.3.0, 10.3.0 for x86_64 or gcc 9.3.0 for aarch64 with -O2 it emits a .globl __divti3 even though there is no call to that function. In the x86 asm output for the reproducer, there is: .size bar, .-bar .globl __udivti3 .globl __divti3 <-- bogus .global emission .globl foo ... call __udivti3 This occurs on at least: gcc 7.5.0 target x86_64--netbsd gcc 9.3.0 target x86_64--linux-gnu gcc 10.3.0 targets aarch64--netbsd x86_64--netbsd No ".global __divti3" is emitted with: gcc 6.4.0 target x86_64--linux-gnu