Merge: compiler: fast path is the hot path in once and literal strings
authorJean Privat <jean@pryen.org>
Tue, 3 Mar 2015 15:05:33 +0000 (22:05 +0700)
committerJean Privat <jean@pryen.org>
Tue, 3 Mar 2015 15:05:33 +0000 (22:05 +0700)
commit6e549a2629c75122184fe861b8214922ddec2739
tree3a1c1965f563ece7e14dc5b7b120e7a99f4e4672
parentbac6a950e3c79f5fd9a65be26c3119a4fe3ee6ae
parent047d4cd9b74fe5506936af2ac4c05db35aac34e4
Merge: compiler: fast path is the hot path in once and literal strings

`once` structure and literal strings are implemented with a guard so that
onced-expression and literal strings are evaluated/created once then
stored in a static variable.

This patch just informs GCC that the fast path (get the saved value)
it the frequent path. It's up to GCC to do something useful with this
information.

It seems it does since number for nitc/nitc/nitc are

before: 0m7.324s
after: 0m7.156s (-2.3%)

Pull-Request: #1183
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>