This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hello, Thanks for the comments. Attached is the fixed version. > (??? Would be clearer to initially set first/last_cycle_in_window, and then > set 'start' and 'end' accordingly depending on 'step'.) > Consider as an alternative passing the window (start, end, step) to a > unified calulate_must_precede_follow() function, as these > first/last_cycle_in_window variables may be internal to the > calculate_must*() functions. Done. Function get_sched_window () pretty much follows the pseudocode from the sms article (Swing Modulo Scheduling for GCC), which defines the scheduling window using start, end cycles and step, so I left it as is and only apply the change to calulate_must_precede_follow () as suggested above. > > I prefer to keep the single original > > for (c = start; c != end; c += step) > > loop calling try_scheduling_node_in_cycle, with all the logic of setting > tmp_precede/tmp_follow in one place albeit inside the loop (as suggested > earlier), than peeling first and last iterations. Done. Re-tested on powerpc64-linux and SPU together with patch 1/2. OK for mainline? Revital 2007-11-28 Ayal Zaks <zaks@il.ibm.com> Revital Eres <eres@il.ibm.com> * modulo-sched.c (calculate_must_precede_follow, try_scheduling_node_in_cycle): New functions. (sms_schedule_by_order): Call the new functions. (ps_insn_find_column): Use must_follow and must_precede only if they are not NULL. (ps_insn_advance_column): Likewise. testsuite: * gcc.dg/sms-4.c: New testcase. (See attached file: patch_2_2_27.txt)(See attached file: sms-4.c.txt)
Attachment:
patch_2_2_27.txt
Description: Text document
Attachment:
sms-4.c.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |