https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122018
Bug ID: 122018 Summary: x86 doesn't use bitmanip to both set and test bit Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: uis9936 at gmail dot com Target Milestone: --- Created attachment 62425 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=62425&action=edit Full testcase x86 has instructions bt(bit test) and bts(bit test and set). As name suggests, bts is equivalent to bt, but also sets bit. GCC can generate bt when the bit is only tested, bts when bit is only set, but can't generate bts when bit is both tested and set. It can be verified by commenting line 5 or 6 of provided testcase.