1 |
On Wednesday 28 September 2005 23:42, Bastian Balthazar Bux wrote: |
2 |
> with src_profile() responsible to do basically two things: |
3 |
> - run the builded app with some fake data |
4 |
> - rebuild the source using the gathered profile info. |
5 |
> |
6 |
> The first step within some ebuilds could be done by src_test, the second |
7 |
> is basically a reduced src_compile. |
8 |
> |
9 |
> any thoughts ? |
10 |
|
11 |
-fno-guess-branch-probability |
12 |
Do not guess branch probabilities using a randomized model. |
13 |
|
14 |
Sometimes GCC will opt to use a randomized model to guess branch |
15 |
probabilities, when none are available from either profiling feed- |
16 |
back (-fprofile-arcs) or __builtin_expect. This means that differ- |
17 |
ent runs of the compiler on the same program may produce different |
18 |
object code. |
19 |
|
20 |
In a hard real-time system, people don't want different runs of the |
21 |
compiler to produce code that has different behavior; minimizing |
22 |
non-determinism is of paramount import. This switch allows users |
23 |
to reduce non-determinism, possibly at the expense of inferior |
24 |
optimization. |
25 |
|
26 |
The default is -fguess-branch-probability at levels -O, -O2, -O3, |
27 |
-Os. |
28 |
|
29 |
Any "test data" that could be used to automatically profile is essentially |
30 |
just a randomized model. So it would seem gcc has it inbuilt already. |
31 |
|
32 |
-- |
33 |
Jason Stubbs |
34 |
-- |
35 |
gentoo-portage-dev@g.o mailing list |