Michael Beck [Thu, 4 Sep 2008 10:32:17 +0000 (10:32 +0000)]
strange difference between eccp and cparser
[r21692]
Christoph Mallon [Thu, 4 Sep 2008 09:32:17 +0000 (09:32 +0000)]
Rename -fluffig to -fsync, perform opt_sync() (formerly opt_ldst2()) last to not interfere with load store optimisation.
[r21689]
Christoph Mallon [Thu, 4 Sep 2008 08:57:47 +0000 (08:57 +0000)]
Indentation.
[r21686]
Matthias Braun [Thu, 4 Sep 2008 08:42:11 +0000 (08:42 +0000)]
fix the reload folding mode stuff in a more correct way
[r21685]
Matthias Braun [Thu, 4 Sep 2008 08:31:06 +0000 (08:31 +0000)]
revert last change
[r21684]
Matthias Braun [Thu, 4 Sep 2008 08:26:38 +0000 (08:26 +0000)]
don't extend load_mode when folding reloads
[r21683]
Andreas Zwinkau [Wed, 3 Sep 2008 14:18:29 +0000 (14:18 +0000)]
Use march=pentium3 to use if-conv
[r21671]
Christoph Mallon [Wed, 3 Sep 2008 13:50:49 +0000 (13:50 +0000)]
Fix conv skip in gen_lowered_64bit_shifts() (still necessary at all?).
[r21669]
Christoph Mallon [Wed, 3 Sep 2008 13:48:00 +0000 (13:48 +0000)]
Only skip Convs within the same register class when trying to create dest AM (is this still necessary at all?).
[r21668]
Christoph Mallon [Wed, 3 Sep 2008 13:02:06 +0000 (13:02 +0000)]
Fix fehler147: Do not deconv floats.
[r21666]
Matthias Braun [Wed, 3 Sep 2008 12:43:25 +0000 (12:43 +0000)]
simplify
[r21665]
Matthias Braun [Wed, 3 Sep 2008 12:42:46 +0000 (12:42 +0000)]
fehler147 (produces invisible lightning gun in quake3)
[r21664]
Sebastian Buchwald [Tue, 2 Sep 2008 21:17:41 +0000 (21:17 +0000)]
Added test case for Load-Add-Load conflict, that also seems to have missing skip patterns.
[r21657]
Christoph Mallon [Tue, 2 Sep 2008 14:06:54 +0000 (14:06 +0000)]
Use backtracking in find_original_value() for the flags emitter.
[r21655]
Michael Beck [Tue, 2 Sep 2008 13:45:35 +0000 (13:45 +0000)]
removed C99 feature
[r21653]
Michael Beck [Tue, 2 Sep 2008 13:42:39 +0000 (13:42 +0000)]
extending r21638: check sign when classifying float constants
[r21652]
Christoph Mallon [Tue, 2 Sep 2008 13:23:40 +0000 (13:23 +0000)]
Fix printing tarvals into long double.
[r21650]
Christoph Mallon [Tue, 2 Sep 2008 13:11:12 +0000 (13:11 +0000)]
Style fix.
[r21648]
Andreas Zwinkau [Tue, 2 Sep 2008 13:01:54 +0000 (13:01 +0000)]
Dump ins_permuted and cmp_unsigned attributes to vcg
[r21647]
Michael Beck [Tue, 2 Sep 2008 12:47:08 +0000 (12:47 +0000)]
removed C99 features
[r21646]
Michael Beck [Tue, 2 Sep 2008 12:35:32 +0000 (12:35 +0000)]
demonstartes a bug in the tarval module
[r21645]
Matthias Braun [Tue, 2 Sep 2008 11:54:51 +0000 (11:54 +0000)]
overspilling testcase by mallon
[r21644]
Matthias Braun [Tue, 2 Sep 2008 11:35:55 +0000 (11:35 +0000)]
fix too conservative delay taking step
[r21643]
Andreas Zwinkau [Tue, 2 Sep 2008 10:41:14 +0000 (10:41 +0000)]
New test cases for Mux and ia32_Test
[r21641]
Christoph Mallon [Tue, 2 Sep 2008 10:00:52 +0000 (10:00 +0000)]
Be nice: Use the async-signal safe _exit() instead of exit().
[r21640]
Christoph Mallon [Tue, 2 Sep 2008 09:47:13 +0000 (09:47 +0000)]
fehler143: eccp makes the __assert_fail() call in an assert() macro disappear.
[r21639]
Matthias Braun [Tue, 2 Sep 2008 09:35:13 +0000 (09:35 +0000)]
don't forget to check the sign of a float number, this fixes fehler142
[r21638]
Matthias Braun [Tue, 2 Sep 2008 09:23:51 +0000 (09:23 +0000)]
eccp optimized the assert away!?!, anyway I wanna fix the real error first...
[r21637]
Matthias Braun [Tue, 2 Sep 2008 08:58:05 +0000 (08:58 +0000)]
fehler142 (probably the quake3 client problem)
[r21636]
Christoph Mallon [Tue, 2 Sep 2008 07:16:29 +0000 (07:16 +0000)]
Partially undo r20786: Emit ret $0 especially when its BB is only reached by a fallthrough, because this means its predecessor ends with a conditional jump. According to the AMD Optimization guides, conditional jump directly followed by ret should be avoided.
[r21632]
Matthias Braun [Mon, 1 Sep 2008 10:38:58 +0000 (10:38 +0000)]
improved belady3
[r21619]
Michael Beck [Fri, 29 Aug 2008 02:13:02 +0000 (02:13 +0000)]
testcase for currently broken GVN-PRE
[r21561]
Michael Beck [Fri, 29 Aug 2008 00:46:16 +0000 (00:46 +0000)]
testcase for currently broken GVN-PRE
[r21560]
Christoph Mallon [Thu, 28 Aug 2008 19:07:00 +0000 (19:07 +0000)]
80bit floats have no implicit leading 1.
[r21558]
Christoph Mallon [Thu, 28 Aug 2008 19:06:15 +0000 (19:06 +0000)]
Only warn about Sub with constant in the backend, if the mode is not float.
[r21557]
Christoph Mallon [Thu, 28 Aug 2008 18:07:40 +0000 (18:07 +0000)]
Fix typos in fehler139.
[r21556]
Michael Beck [Thu, 28 Aug 2008 16:31:57 +0000 (16:31 +0000)]
Fix fehler139: Pass eflags input of Adc/Sbb to AM matcher.
[r21555]
Michael Beck [Thu, 28 Aug 2008 16:17:36 +0000 (16:17 +0000)]
fixed the bad programm
[r21554]
Michael Beck [Thu, 28 Aug 2008 16:07:56 +0000 (16:07 +0000)]
wrong 64bit lowering
[r21553]
Michael Beck [Thu, 28 Aug 2008 15:02:04 +0000 (15:02 +0000)]
Arg: add a missing inc_irg_visited, who has deleted it?
[r21552]
Michael Beck [Tue, 26 Aug 2008 12:23:46 +0000 (12:23 +0000)]
more DBG_OPT cases
[r21483]
Michael Beck [Tue, 26 Aug 2008 12:14:13 +0000 (12:14 +0000)]
fixed meanings of optimizations
[r21482]
Michael Beck [Tue, 26 Aug 2008 11:33:03 +0000 (11:33 +0000)]
do NOT allocate an entry for Constants if they are not counted
[r21477]
Michael Beck [Tue, 26 Aug 2008 11:23:57 +0000 (11:23 +0000)]
Do NOT call DBG_OPT_CSE() in identify remember, as this is used for different
purposes, call it only if a node is really replaced.
[r21475]
Michael Beck [Tue, 26 Aug 2008 11:22:07 +0000 (11:22 +0000)]
Do not split string literals.
[r21474]
Christoph Mallon [Tue, 26 Aug 2008 09:57:51 +0000 (09:57 +0000)]
Teach use_dest_am() about Syncs.
[r21469]
Christoph Mallon [Mon, 25 Aug 2008 20:07:07 +0000 (20:07 +0000)]
Gammelfix.
[r21465]
Christoph Mallon [Mon, 25 Aug 2008 19:44:20 +0000 (19:44 +0000)]
Fix lrot.c: Shifting by the width of the left operand results in undefined behaviour.
[r21464]
Christoph Mallon [Mon, 25 Aug 2008 18:45:23 +0000 (18:45 +0000)]
Remove unnecessary condition in Load-to-Pop-optimisation: The Load does not need to have a Spill as memory predecessor. Especially the existing condition tests for Phis, which does not guarantee that there is a Spill.
[r21461]
Christoph Mallon [Mon, 25 Aug 2008 18:27:40 +0000 (18:27 +0000)]
Remove unnecessary test (when there is no index, scale does not matter).
[r21460]
Christoph Mallon [Mon, 25 Aug 2008 18:26:58 +0000 (18:26 +0000)]
Do not use && in assert().
[r21459]
Christoph Mallon [Mon, 25 Aug 2008 12:28:29 +0000 (12:28 +0000)]
Fix fehler138.
[r21446]
Christoph Mallon [Mon, 25 Aug 2008 12:28:05 +0000 (12:28 +0000)]
fehler138: must_be_different-handler chokes on Proj of constrained node.
[r21445]
Michael Beck [Sun, 24 Aug 2008 12:48:08 +0000 (12:48 +0000)]
better count constants as operands of instructions
[r21407]
Michael Beck [Sun, 24 Aug 2008 12:42:30 +0000 (12:42 +0000)]
BugFix: treat 0 as 0.0, not 1.0
[r21406]
Michael Beck [Sun, 24 Aug 2008 11:26:58 +0000 (11:26 +0000)]
beware of NaN's
[r21405]
Michael Beck [Sun, 24 Aug 2008 11:22:41 +0000 (11:22 +0000)]
- add QuotC
- fixed floating point constant classification
[r21404]
Michael Beck [Sun, 24 Aug 2008 11:07:08 +0000 (11:07 +0000)]
- converted get_irn_n(*, -1) back into get_nodes_block()
- use is_Pin()
- use value_of() instead of is_Const() test
[r21402]
Michael Beck [Sun, 24 Aug 2008 10:57:37 +0000 (10:57 +0000)]
added skip_Pin()
[r21401]
Christoph Mallon [Sun, 24 Aug 2008 08:02:20 +0000 (08:02 +0000)]
Remove dead initialisation.
[r21398]
Michael Beck [Sun, 24 Aug 2008 00:19:59 +0000 (00:19 +0000)]
more tarval cleanup
[r21396]
Michael Beck [Sun, 24 Aug 2008 00:04:45 +0000 (00:04 +0000)]
- simplified code
- add half and quad (need to change general precision from 66 to 130 bit) precisions
[r21395]
Christoph Mallon [Sat, 23 Aug 2008 23:24:30 +0000 (23:24 +0000)]
Sync the Stores generated by gen_float_const_Store().
[r21393]
Christoph Mallon [Sat, 23 Aug 2008 23:11:59 +0000 (23:11 +0000)]
Simplify gen_float_const_Store().
[r21392]
Michael Beck [Sat, 23 Aug 2008 22:21:27 +0000 (22:21 +0000)]
BugFix: used right descriptor in fc_val_from_str()
[r21391]
Michael Beck [Sat, 23 Aug 2008 21:16:35 +0000 (21:16 +0000)]
fixed fc_val_from_str(), this fixes fehler137.c
[r21390]
Michael Beck [Sat, 23 Aug 2008 21:05:49 +0000 (21:05 +0000)]
add support for explicit one
[r21389]
Christoph Mallon [Sat, 23 Aug 2008 15:32:33 +0000 (15:32 +0000)]
Remove write-only variable. = and + output constraints are handled way earlier.
[r21388]
Christoph Mallon [Sat, 23 Aug 2008 15:30:37 +0000 (15:30 +0000)]
Slightly improve readability.
[r21387]
Christoph Mallon [Sat, 23 Aug 2008 13:20:45 +0000 (13:20 +0000)]
fehler137: tarval module does not model the explicit leading 1 for long double on x86.
[r21383]
Christoph Mallon [Sat, 23 Aug 2008 13:19:27 +0000 (13:19 +0000)]
Fix output for long double initializers.
[r21382]
Christoph Mallon [Sat, 23 Aug 2008 06:35:34 +0000 (06:35 +0000)]
Remove unnecessary dependency edge from the IncSP, which destroys the stack frame, to the final memory Proj. Most probably it is unnecessary since Projs are not scheduled anymore.
[r21370]
Christoph Mallon [Sat, 23 Aug 2008 06:33:52 +0000 (06:33 +0000)]
Add main().
[r21369]
Christoph Mallon [Sat, 23 Aug 2008 06:06:18 +0000 (06:06 +0000)]
Fix asm_test5: Prevent the ASM node from being scheduled before the Barrier, if it has no inputs.
[r21368]
Michael Beck [Sat, 23 Aug 2008 00:35:36 +0000 (00:35 +0000)]
- BugFix: fix_start_proj() erronously assumed the startblock has only
mode_X out edge. This is wrong in phase backend AND might be wrong if
start block has a keep-alive (which should not happen normally)
- fix_start_proj() speed up implementation
- add comment that fix_start_proj() is only needed in a really rare case
...
- add out edge verifier
[r21367]
Michael Beck [Sat, 23 Aug 2008 00:32:34 +0000 (00:32 +0000)]
- removed NO_FOLLOWER
- no need to add a keep-alive edge if block input is Bad
- report fused blocks
- report removed block inputs
[r21366]
Christoph Mallon [Fri, 22 Aug 2008 18:33:52 +0000 (18:33 +0000)]
Remove the unused node types ia32_l_Load, ia32_l_Store, ia32_l_vfild and ia32_l_vfist.
[r21365]
Christoph Mallon [Fri, 22 Aug 2008 18:24:00 +0000 (18:24 +0000)]
Use symbolic names instead of magic values for the position parameter of get_irn_n().
[r21364]
Christoph Mallon [Fri, 22 Aug 2008 18:14:38 +0000 (18:14 +0000)]
Small cleanup.
[r21363]
Christoph Mallon [Fri, 22 Aug 2008 18:00:53 +0000 (18:00 +0000)]
Remove final \n from panic messages, panic() adds a newline automagically.
[r21362]
Christoph Mallon [Fri, 22 Aug 2008 17:52:17 +0000 (17:52 +0000)]
Do not split string literals.
[r21360]
Christoph Mallon [Fri, 22 Aug 2008 17:44:18 +0000 (17:44 +0000)]
Remove unnecessary cast.
[r21358]
Christoph Mallon [Fri, 22 Aug 2008 14:22:33 +0000 (14:22 +0000)]
Run the x87 simulator when a graph contains Calls, which return floats.
[r21352]
Christoph Mallon [Fri, 22 Aug 2008 12:59:30 +0000 (12:59 +0000)]
Bug in edgfe when taking address of forward declared variable (struct? const?).
[r21349]
Christoph Mallon [Fri, 22 Aug 2008 11:57:05 +0000 (11:57 +0000)]
Convert Stores to Pushs after IncSP from top of stack, not from the other end of the IncSP.
[r21344]
Christoph Mallon [Thu, 21 Aug 2008 14:43:05 +0000 (14:43 +0000)]
Small simplification in ia32 ASM emitter.
[r21325]
Christoph Mallon [Thu, 21 Aug 2008 14:37:55 +0000 (14:37 +0000)]
Add is_Carry(), get_Carry_left(), get_Carry_right().
[r21324]
Christoph Mallon [Thu, 21 Aug 2008 14:35:12 +0000 (14:35 +0000)]
Use Doxygen group comment.
[r21323]
Christoph Mallon [Thu, 21 Aug 2008 14:24:33 +0000 (14:24 +0000)]
Correct assertion.
[r21322]
Christoph Mallon [Thu, 21 Aug 2008 14:20:18 +0000 (14:20 +0000)]
Adjust the push-through-perm-frontier: It is the problematic node itself, not its successor.
[r21321]
Christoph Mallon [Thu, 21 Aug 2008 13:41:34 +0000 (13:41 +0000)]
Correct asm_test4.c, it only worked by pure chance on gcc.
[r21317]
Andreas Zwinkau [Thu, 21 Aug 2008 13:36:29 +0000 (13:36 +0000)]
Test case to use the correct Cmp mode
[r21315]
Michael Beck [Thu, 21 Aug 2008 13:03:20 +0000 (13:03 +0000)]
- crashes, why?
[r21314]
Michael Beck [Thu, 21 Aug 2008 12:42:51 +0000 (12:42 +0000)]
push_through_perm():
- fixed dominance frontier IF walking the whole block upwards
- simplified code
- hopefully better explanation how the frontier is calculated
[r21312]
Andreas Zwinkau [Thu, 21 Aug 2008 12:34:52 +0000 (12:34 +0000)]
Adding another inline assembler test
It looks strange, but icc and gcc can do it.
[r21311]
Michael Beck [Thu, 21 Aug 2008 11:41:15 +0000 (11:41 +0000)]
be_Perm_reduce: no need to allocate a temporary array on the irg's obstack, set_in_in() creates a new one
[r21310]
Christoph Mallon [Thu, 21 Aug 2008 10:58:11 +0000 (10:58 +0000)]
cc_fixed is dead, all hail stickyness_sticky!
[r21309]
Michael Beck [Thu, 21 Aug 2008 10:56:42 +0000 (10:56 +0000)]
- sticky methods can be called from outside (by inline ASM for instance) and are NOT private
[r21307]
Christoph Mallon [Thu, 21 Aug 2008 08:29:40 +0000 (08:29 +0000)]
Do it like GCC: write #APP #NO_APP around inline assembler.
[r21304]
Christoph Mallon [Thu, 21 Aug 2008 07:30:25 +0000 (07:30 +0000)]
Remove last vestiges of arch_register_req_type_should_be_different_from_all (removed in r16320).
[r21303]