On 07/16/2018 06:37 PM, Jonathan Wakely wrote:
On 16/07/18 18:24 +0200, Florian Weimer wrote:
On 07/16/2018 05:25 PM, Jonathan Wakely wrote:
On 12/07/18 20:49 +0200, mskalick@xxxxxxxxxx wrote:
Dan Horák píše v St 11. 07. 2018 v 14:12 +0200:
On Wed, 11 Jul 2018 14:00:40 +0200
mskalick@xxxxxxxxxx wrote:
Hi,
during a discussion with upstream (MongoDB) they asked me about
default Fedora C/C++ build flags. And I don't remember all Fedora
System Wide changes where it was introduced,... so is there some
place where it's described?
https://src.fedoraproject.org/rpms/redhat-rpm-config/blob/master/f/bu
ildflags.md
Thanks. Also does someone have any information how our flags affects
performance?
(which is also important for the upstream project)
Currently -D_GLIBCXX_ASSERTIONS has fairly negative effects on
performance of some code using the C++ standard library. GCC is not
able to optimise away as many of the checks as we initially thought.
Do you know if anything else besides <https://gcc.gnu.org/PR85929>?
That one at least a simple source-level fix (probably fixing a real
bug in some cases): Use size_type/size_t for the index variable.
That's the only specific example I'm aware of, but there might be
plenty of correct code using unsigned for the loop variable, which
gets pessimised by the assertions. It's unusual to have more than
UINT_MAX elements in a vector, so we can't just say such code needs
fixing.
It's not just about -D_GLIBCXX_ASSERTIONS. The type mismatch inhibits
loop optimizations in general (looks like strength reduction in particular).
Thanks,
Florian
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/ZWOPT5BGQACURKXFBQ5NC26G7IACSEVG/