Michael Beck [Fri, 18 Feb 2011 22:44:01 +0000 (22:44 +0000)]
BugFix: ensure that two ASM nodes are never congruent in combo.
Without parsing the text of a ASM node it is not possible to decide whether two
ASM nodes are congruent. Don't even try it.
This fixes testsuite/opt/comboattrs.c
[r28422]
Michael Beck [Fri, 18 Feb 2011 22:22:29 +0000 (22:22 +0000)]
Removed C99 feature, adapt to Firm coding conventions.
[r28421]
Andreas Zwinkau [Fri, 18 Feb 2011 14:24:25 +0000 (14:24 +0000)]
Fix opt/git_error.c testcase
Extend the fix_adds_and_subs pass after strength reduction, which
inserts Convs to make the verifier happy. In case the index
variable is inverted (i=1-i) on each loop iteration, the optimization
may yield a SubP(ConstIu,PhiP), which is rejected by the verifier.
[r28409]
Michael Beck [Thu, 17 Feb 2011 22:20:23 +0000 (22:20 +0000)]
Fixed iterations broken with size_t refactoring.
Some iterations must be done backwards.
[r28401]
Michael Beck [Thu, 17 Feb 2011 20:46:37 +0000 (20:46 +0000)]
Finally fix the "wrong" assert of r28379.
Introduce a get_irn_resmode() and use it at all places in combo where the
part of the opcode is meaned.
[r28400]
Andreas Zwinkau [Thu, 17 Feb 2011 12:56:12 +0000 (12:56 +0000)]
Fixes testcase opt/gzip_error
The backend sometimes creates ProjM with a temporarily broken pn,
so the verifier must not check them.
[r28392]
Matthias Braun [Thu, 17 Feb 2011 12:52:36 +0000 (12:52 +0000)]
fixed broken builtins and added some comments
[r28391]
Matthias Braun [Thu, 17 Feb 2011 00:13:54 +0000 (00:13 +0000)]
Revert reversion of r28379. Maybe this way it's clear why the assert was wrong.
[r28387]
Matthias Braun [Thu, 17 Feb 2011 00:13:53 +0000 (00:13 +0000)]
reworked ia32 condition code handling, remove backend Bound support (really someone should lower it before the backend
[r28386]
Michael Beck [Wed, 16 Feb 2011 21:08:35 +0000 (21:08 +0000)]
Revert r28379.
This optimization is unsafe and breaks Load-Store-optimization.
It is not enough that both loads are connected by the memory edge,
if one Load has an exception-edge, they cannot be parallelized, because
this would destroy exception order.
load-store-opt handle this case and many others, but expect all
Loads in order yet.
opt_parallelize_mem() does this optimization in a wider range.
[r28385]
Michael Beck [Wed, 16 Feb 2011 20:56:43 +0000 (20:56 +0000)]
Revert r28379.
All leaders of a partition must have the same opcode, which is the pair
of <irn_opcode, ir_mode> in Firm.
[r28384]
Matthias Braun [Wed, 16 Feb 2011 17:43:15 +0000 (17:43 +0000)]
fix docu
[r28383]
Matthias Braun [Wed, 16 Feb 2011 15:41:29 +0000 (15:41 +0000)]
improve bittest normalization
[r28382]
Matthias Braun [Wed, 16 Feb 2011 15:39:24 +0000 (15:39 +0000)]
normalize some bittest constructs
[r28381]
Andreas Zwinkau [Wed, 16 Feb 2011 15:00:19 +0000 (15:00 +0000)]
Remove broken assert
[r28379]
Andreas Zwinkau [Wed, 16 Feb 2011 15:00:18 +0000 (15:00 +0000)]
New localopt: parallelize non-volatile loads
[r28378]
Andreas Zwinkau [Wed, 16 Feb 2011 12:17:16 +0000 (12:17 +0000)]
Removed: list_sched_single_block
Was used by the (removed) ILP scheduler. Dead code now.
[r28377]
Michael Beck [Fri, 11 Feb 2011 15:21:45 +0000 (15:21 +0000)]
Further spread size_t.
[r28375]
Michael Beck [Fri, 11 Feb 2011 15:18:07 +0000 (15:18 +0000)]
Fixed comments.
[r28374]
Michael Beck [Fri, 11 Feb 2011 15:17:57 +0000 (15:17 +0000)]
Fixed backward iteration using size_t again.
[r28373]
Matthias Braun [Fri, 11 Feb 2011 15:10:15 +0000 (15:10 +0000)]
use long for now so at least not half the testsuite is broken
[r28372]
Matthias Braun [Fri, 11 Feb 2011 15:04:34 +0000 (15:04 +0000)]
tarval_quo has been removed in favor of tarval_div
[r28371]
Michael Beck [Fri, 11 Feb 2011 14:03:03 +0000 (14:03 +0000)]
Some size_t related fixes.
[r28369]
Michael Beck [Fri, 11 Feb 2011 14:02:53 +0000 (14:02 +0000)]
Simplified implementation by removing unused args and impossible conditions.
There seems to be no "open" methods at all (at least now, this concept seems
to be dead).
[r28368]
Matthias Braun [Fri, 11 Feb 2011 13:52:47 +0000 (13:52 +0000)]
comparing timesteps in different blocks is pointless and here more conservative than necessary
[r28367]
Michael Beck [Fri, 11 Feb 2011 13:19:11 +0000 (13:19 +0000)]
Amendment to r28345-r28346.
Check for mode int on several places where Div nodes are handled:
- fixed arch_dep_replace_div_by_const() (works for int only)
- fixed constant folding for Div nodes (different for float and int)
- fixed transform_node_Div() (some code pathes allowed only for int)
- fixed comment and one missing check in Div mode verifycation
[r28366]
Michael Beck [Fri, 11 Feb 2011 13:18:59 +0000 (13:18 +0000)]
Removed C99 feature.
[r28365]
Michael Beck [Fri, 11 Feb 2011 13:18:49 +0000 (13:18 +0000)]
Windows has no ssize_t ...
[r28364]
Sebastian Buchwald [Thu, 10 Feb 2011 12:24:14 +0000 (12:24 +0000)]
Fixed typo.
[r28361]
Matthias Braun [Wed, 9 Feb 2011 13:55:18 +0000 (13:55 +0000)]
remove Quot node (just use Div instead)
[r28346]
Matthias Braun [Wed, 9 Feb 2011 13:55:16 +0000 (13:55 +0000)]
remove DivMod
[r28345]
Matthias Braun [Wed, 9 Feb 2011 13:55:14 +0000 (13:55 +0000)]
do not output no_dead_strip for anonymous entities on macho targets
[r28344]
Matthias Braun [Wed, 9 Feb 2011 13:55:13 +0000 (13:55 +0000)]
recursively optimize phi to get real minimal SSA-form for reducible CFGs
[r28343]
Matthias Braun [Wed, 9 Feb 2011 13:55:12 +0000 (13:55 +0000)]
ebx is no problem with pic when compiling in 64bit (but the pushl+popl are)
[r28342]
Matthias Braun [Wed, 9 Feb 2011 13:55:11 +0000 (13:55 +0000)]
translate comment to english
[r28341]
Matthias Braun [Wed, 9 Feb 2011 13:55:10 +0000 (13:55 +0000)]
further spread size_t (all warnings on linux/gcc fixed)
[r28340]
Matthias Braun [Wed, 9 Feb 2011 13:55:08 +0000 (13:55 +0000)]
fix bugs introduced in last commit
[r28339]
Michael Beck [Wed, 9 Feb 2011 00:03:31 +0000 (00:03 +0000)]
Further spread size_t.
[r28338]
Matthias Braun [Tue, 8 Feb 2011 18:08:39 +0000 (18:08 +0000)]
further spread size_t
[r28337]
Matthias Braun [Tue, 8 Feb 2011 18:08:38 +0000 (18:08 +0000)]
avoid some warnings by not using macros
[r28336]
Christoph Mallon [Sun, 6 Feb 2011 18:36:30 +0000 (18:36 +0000)]
Handle some cases of </<=/>=/> comparisons in the fixpoint vrp.
[r28334]
Christoph Mallon [Sun, 6 Feb 2011 18:36:27 +0000 (18:36 +0000)]
Add a hint about the infamous pn_Cmp_Lg/Ne mixup in the assertion message of verify_node_Proj_Cmp().
[r28333]
Christoph Mallon [Sun, 6 Feb 2011 18:36:24 +0000 (18:36 +0000)]
Properly check whether sscanf() succeeded.
[r28332]
Christoph Mallon [Sun, 6 Feb 2011 18:36:21 +0000 (18:36 +0000)]
Replace strcpy()+strcat() song and dance by a single sprintf().
[r28331]
Christoph Mallon [Sun, 6 Feb 2011 18:36:17 +0000 (18:36 +0000)]
Fix several size_t related signed/unsigned warnings.
[r28330]
Christoph Mallon [Sun, 6 Feb 2011 18:36:10 +0000 (18:36 +0000)]
Remove surplus {}.
[r28329]
Michael Beck [Sun, 6 Feb 2011 15:05:57 +0000 (15:05 +0000)]
Removed unused parameter from_step of be_get_next_use().
Additionally
- switched the type of a visitor counter to ir_visited_t
- add some doxygen docu
[r28328]
Michael Beck [Sun, 6 Feb 2011 12:15:30 +0000 (12:15 +0000)]
Fixed size_t related warnings by isolating PTR_TO_INT macros.
Additionally:
- rename some variables to reflect its content
- add some doxygen comments
[r28327]
Christoph Mallon [Sat, 5 Feb 2011 15:40:02 +0000 (15:40 +0000)]
Sprinkle const on the in array of node constructors with variable arity.
[r28310]
Michael Beck [Thu, 3 Feb 2011 21:51:17 +0000 (21:51 +0000)]
Fixed more size_T related warnings.
[r28292]
Michael Beck [Thu, 3 Feb 2011 21:50:54 +0000 (21:50 +0000)]
BugFix: when we create a new Conv node in combo's exchange_leader(), this irn has no node_t.
When we create a new Conv node in combo's exchange_leader(), this irn has no node_t.
This is ok, replace the original node in a post walker.
However, as the new node has a visited count of 0 it might be revisited
again.
Fix this by copying the visited count.
This fixes testsuite/opt/fehler179.c
[r28291]
Julius Neuffer [Thu, 3 Feb 2011 13:48:09 +0000 (13:48 +0000)]
add #include <stddef.h>
[r28289]
Christoph Mallon [Mon, 31 Jan 2011 10:18:11 +0000 (10:18 +0000)]
Correct typo in comment.
[r28287]
Christoph Mallon [Mon, 31 Jan 2011 10:18:10 +0000 (10:18 +0000)]
Remove pointless assert: size_t nelts is always >= 0.
[r28286]
Christoph Mallon [Mon, 31 Jan 2011 10:18:09 +0000 (10:18 +0000)]
Add #include for size_t.
[r28285]
Michael Beck [Sun, 30 Jan 2011 15:23:18 +0000 (15:23 +0000)]
More size_t related changes.
[r28282]
Michael Beck [Sun, 30 Jan 2011 15:22:58 +0000 (15:22 +0000)]
API change: lower_intrinsics() uses size_t for length now.
[r28281]
Michael Beck [Sat, 29 Jan 2011 03:07:07 +0000 (03:07 +0000)]
Simplyfied firm arrays by deleting useless macro and union.
[r28280]
Michael Beck [Sat, 29 Jan 2011 00:18:20 +0000 (00:18 +0000)]
pdeq_len() returns size_t now, switch the internal types of pdeq to size_t.
[r28279]
Michael Beck [Fri, 28 Jan 2011 01:20:58 +0000 (01:20 +0000)]
Fixed size_t related warnings in macros.
[r28278]
Michael Beck [Fri, 28 Jan 2011 01:13:57 +0000 (01:13 +0000)]
Fixed firmEvaluator debug build.
[r28277]
Michael Beck [Fri, 28 Jan 2011 01:13:44 +0000 (01:13 +0000)]
Fixed more size_t related warnings.
[r28276]
Michael Beck [Mon, 24 Jan 2011 23:31:53 +0000 (23:31 +0000)]
Fixed a lot of size_t related warnings, most of them due to array implementation change.
[r28272]
Michael Beck [Mon, 24 Jan 2011 23:31:13 +0000 (23:31 +0000)]
Switch array to size_t for length parameter ...
[r28271]
Michael Beck [Mon, 24 Jan 2011 23:30:57 +0000 (23:30 +0000)]
Fixed broken refactoring of r28264.
[r28270]
Michael Beck [Mon, 24 Jan 2011 00:27:20 +0000 (00:27 +0000)]
Fixed size_t issues.
[r28268]
Michael Beck [Mon, 24 Jan 2011 00:27:06 +0000 (00:27 +0000)]
Switch pqueue to size_t.
[r28267]
Michael Beck [Mon, 24 Jan 2011 00:22:16 +0000 (00:22 +0000)]
Fixed some size_t related warnings.
[r28266]
Michael Beck [Wed, 19 Jan 2011 23:24:56 +0000 (23:24 +0000)]
Fixed wrong type cast spotted by the intel compiler in our portale obstack.h.
[r28265]
Michael Beck [Wed, 19 Jan 2011 23:12:39 +0000 (23:12 +0000)]
Amendment of r28263 which was committed too early.
Another interface change: gc_irgs() now gets an size_t parameter.
Additionally fixed a memory leak.
[r28264]
Michael Beck [Wed, 19 Jan 2011 22:59:02 +0000 (22:59 +0000)]
Fixed more size_t related warnings, one interface change.
cgana() returns now the lenght of the free_methods array instead of
setting a passed pointer.
[r28263]
Michael Beck [Wed, 19 Jan 2011 22:34:59 +0000 (22:34 +0000)]
Fixed r28259 which broke hh and h modifier.
We must differentiate between the value type and the va_arg type ...
[r28262]
Christoph Mallon [Wed, 19 Jan 2011 13:02:24 +0000 (13:02 +0000)]
va_arg must be used with int instead of char/short. All integer arguments are at least promoted to int.
[r28259]
Christoph Mallon [Wed, 19 Jan 2011 13:02:23 +0000 (13:02 +0000)]
Correct signed/unsigned mismatches due to size_t.
[r28258]
Christoph Mallon [Wed, 19 Jan 2011 13:02:21 +0000 (13:02 +0000)]
Remove assert, which generates a warning, because a variable of type size_t is always >= 0.
[r28257]
Christoph Mallon [Wed, 19 Jan 2011 13:02:19 +0000 (13:02 +0000)]
Include stddef.h for size_t.
[r28256]
Michael Beck [Wed, 19 Jan 2011 00:02:20 +0000 (00:02 +0000)]
Let PTR_TO_INT return ptrdiff_t now instead of int.
[r28255]
Michael Beck [Tue, 18 Jan 2011 23:49:31 +0000 (23:49 +0000)]
Fixed some size_t related warnings.
[r28254]
Michael Beck [Tue, 18 Jan 2011 23:49:12 +0000 (23:49 +0000)]
Switched set, pset, eset to size_t, hash remains unsigned.
[r28253]
Michael Beck [Tue, 18 Jan 2011 21:38:47 +0000 (21:38 +0000)]
Let the length of tarval be of type size_t.
[r28251]
Matthias Braun [Mon, 17 Jan 2011 15:58:56 +0000 (15:58 +0000)]
add another special case to begnuas so string-sub-initializer are emitted as .string too
[r28249]
Christoph Mallon [Mon, 17 Jan 2011 15:38:35 +0000 (15:38 +0000)]
Bail out if we do not know how to assemble CPUID.
[r28248]
Christoph Mallon [Mon, 17 Jan 2011 15:38:33 +0000 (15:38 +0000)]
Do not use b (ebx) as asm constraint, when compiling with __PIC__. GCC cannot handle this.
[r28247]
Christoph Mallon [Mon, 17 Jan 2011 15:38:30 +0000 (15:38 +0000)]
Remove NOP-cast.
[r28246]
Matthias Braun [Tue, 11 Jan 2011 19:46:48 +0000 (19:46 +0000)]
cleanup and simplify phi-construction code
[r28242]
Michael Beck [Sat, 8 Jan 2011 21:33:10 +0000 (21:33 +0000)]
Removed old and unused support for sorted arrays.
[r28241]
Matthias Braun [Sat, 8 Jan 2011 12:32:25 +0000 (12:32 +0000)]
remove get_irn_modename, get_irn_modeident from public API. It's unclear why we need an explicit combination of get_irn_mode and get_mode_name
[r28240]
Matthias Braun [Sat, 8 Jan 2011 12:32:22 +0000 (12:32 +0000)]
fix doxygen warnings
[r28239]
Matthias Braun [Sat, 8 Jan 2011 12:32:19 +0000 (12:32 +0000)]
automatically generate node constructor declarations
[r28238]
Matthias Braun [Sat, 8 Jan 2011 12:32:17 +0000 (12:32 +0000)]
add comments to attributes and inputs in spec file
[r28237]
Matthias Braun [Sat, 8 Jan 2011 12:32:15 +0000 (12:32 +0000)]
kill the niymap exception from generator
[r28236]
Matthias Braun [Sat, 8 Jan 2011 12:32:13 +0000 (12:32 +0000)]
remove special case with ir_cons_flags argument
[r28235]
Matthias Braun [Sat, 8 Jan 2011 12:32:10 +0000 (12:32 +0000)]
move Proj attributes into a proj_attr struct, so we can get rid of more special cases
[r28234]
Matthias Braun [Sat, 8 Jan 2011 12:32:07 +0000 (12:32 +0000)]
remove the 'special-constructor' feature. This removes a bunch of strange exceptions in the node generation scripts
[r28233]
Matthias Braun [Sat, 8 Jan 2011 12:32:04 +0000 (12:32 +0000)]
put node descriptions into the spec file
[r28232]
Matthias Braun [Sat, 8 Jan 2011 12:32:02 +0000 (12:32 +0000)]
java_add parts are specified in jFirm now
[r28231]
Matthias Braun [Sat, 8 Jan 2011 12:32:01 +0000 (12:32 +0000)]
remove unnecessary line-endings from beginning of generated files
[r28230]
Matthias Braun [Sat, 8 Jan 2011 12:31:59 +0000 (12:31 +0000)]
do not include automatically generated files into version control
[r28229]
Matthias Braun [Sat, 8 Jan 2011 12:31:56 +0000 (12:31 +0000)]
add type verifier: entities in global types must have names
[r28228]
Matthias Braun [Sat, 8 Jan 2011 11:04:27 +0000 (11:04 +0000)]
fix warning
[r28227]