Transform assertion into optimization hints
Jonathan Wakely
jwakely@redhat.com
Wed Sep 19 09:42:00 GMT 2018
On 19/09/18 10:16 +0100, Jonathan Wakely wrote:
>On 17/09/18 23:15 +0200, Marc Glisse wrote:
>>On Mon, 17 Sep 2018, François Dumont wrote:
>>
>>>We talk about it a while back.
>>>
>>>I've run testsuite several times since I have this patch on my
>>>local copy. Note that when I implemented it the wrong way tests
>>>started to fail so it is clearly having an effect on the generated
>>>code.
>>>
>>>* include/bits/c++config [__OPTIMIZE__](__glibcxx_assert): Define
>>>as optimization hint
>>>
>>>using __builtin_unreachable.
>>>
>>>Ok to commit ?
>>
>>I see for instance in bits/regex_automaton.tcc:
>>
>> __glibcxx_assert(__m.count(__ref._M_next) > 0);
>>
>>where __m is a map, which does not look so well suited for a
>>__builtin_unreachable. Is it using the wrong macro?
>
>Yes, that looks like it's checking the implementation, but we should
>only add assertions to check what users do (we just need to get our
>own implementation right).
I'll test this patch.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.txt
Type: text/x-patch
Size: 939 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20180919/67f67b9b/attachment.bin>
More information about the Libstdc++
mailing list