diff options
author | Khem Raj <raj.khem@gmail.com> | 2011-09-29 22:12:52 +0000 |
---|---|---|
committer | Koen Kooi <koen@dominion.thruhere.net> | 2011-10-04 13:48:57 +0200 |
commit | b9b5306e551f26d76e9dc5fa6f10c2c095fe6e0f (patch) | |
tree | 3908112a2010485903e16f9f7fec5d0fec2a37fa /meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106783.patch | |
parent | 9f2e55480dc94e90ac09ca468cf2f0dacb54ae2d (diff) | |
download | meta-openembedded-b9b5306e551f26d76e9dc5fa6f10c2c095fe6e0f.tar.gz |
gcc-4.6: Bring in latest linaro patches
Adjust existing patches for latest FSF gcc-4_6-branch
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Diffstat (limited to 'meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106783.patch')
-rw-r--r-- | meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106783.patch | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106783.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106783.patch new file mode 100644 index 0000000000..61e3916375 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106783.patch | |||
@@ -0,0 +1,62 @@ | |||
1 | 2011-07-31 Revital Eres <revital.eres@linaro.org> | ||
2 | |||
3 | gcc/ | ||
4 | Backport from trunk -r176970: | ||
5 | |||
6 | * modulo-sched.c: Change comment. | ||
7 | (reset_sched_times): Fix print message. | ||
8 | (print_partial_schedule): Add print info. | ||
9 | |||
10 | === modified file 'gcc/modulo-sched.c' | ||
11 | --- old/gcc/modulo-sched.c 2011-07-04 12:01:34 +0000 | ||
12 | +++ new/gcc/modulo-sched.c 2011-07-31 10:58:46 +0000 | ||
13 | @@ -84,13 +84,14 @@ | ||
14 | II cycles (i.e. use register copies to prevent a def from overwriting | ||
15 | itself before reaching the use). | ||
16 | |||
17 | - SMS works with countable loops whose loop count can be easily | ||
18 | - adjusted. This is because we peel a constant number of iterations | ||
19 | - into a prologue and epilogue for which we want to avoid emitting | ||
20 | - the control part, and a kernel which is to iterate that constant | ||
21 | - number of iterations less than the original loop. So the control | ||
22 | - part should be a set of insns clearly identified and having its | ||
23 | - own iv, not otherwise used in the loop (at-least for now), which | ||
24 | + SMS works with countable loops (1) whose control part can be easily | ||
25 | + decoupled from the rest of the loop and (2) whose loop count can | ||
26 | + be easily adjusted. This is because we peel a constant number of | ||
27 | + iterations into a prologue and epilogue for which we want to avoid | ||
28 | + emitting the control part, and a kernel which is to iterate that | ||
29 | + constant number of iterations less than the original loop. So the | ||
30 | + control part should be a set of insns clearly identified and having | ||
31 | + its own iv, not otherwise used in the loop (at-least for now), which | ||
32 | initializes a register before the loop to the number of iterations. | ||
33 | Currently SMS relies on the do-loop pattern to recognize such loops, | ||
34 | where (1) the control part comprises of all insns defining and/or | ||
35 | @@ -598,8 +599,8 @@ | ||
36 | /* Print the scheduling times after the rotation. */ | ||
37 | fprintf (dump_file, "crr_insn->node=%d (insn id %d), " | ||
38 | "crr_insn->cycle=%d, min_cycle=%d", crr_insn->node->cuid, | ||
39 | - INSN_UID (crr_insn->node->insn), SCHED_TIME (u), | ||
40 | - normalized_time); | ||
41 | + INSN_UID (crr_insn->node->insn), normalized_time, | ||
42 | + new_min_cycle); | ||
43 | if (JUMP_P (crr_insn->node->insn)) | ||
44 | fprintf (dump_file, " (branch)"); | ||
45 | fprintf (dump_file, "\n"); | ||
46 | @@ -2550,8 +2551,13 @@ | ||
47 | fprintf (dump, "\n[ROW %d ]: ", i); | ||
48 | while (ps_i) | ||
49 | { | ||
50 | - fprintf (dump, "%d, ", | ||
51 | - INSN_UID (ps_i->node->insn)); | ||
52 | + if (JUMP_P (ps_i->node->insn)) | ||
53 | + fprintf (dump, "%d (branch), ", | ||
54 | + INSN_UID (ps_i->node->insn)); | ||
55 | + else | ||
56 | + fprintf (dump, "%d, ", | ||
57 | + INSN_UID (ps_i->node->insn)); | ||
58 | + | ||
59 | ps_i = ps_i->next_in_row; | ||
60 | } | ||
61 | } | ||
62 | |||