libfirm
14 years agothe java frontend keeps methods in class types
Matthias Braun [Fri, 26 Feb 2010 13:55:26 +0000 (13:55 +0000)]
the java frontend keeps methods in class types

[r27225]

14 years agothis assert seems to be wrong for the java frontend (and the C frontends never set...
Matthias Braun [Fri, 26 Feb 2010 13:53:23 +0000 (13:53 +0000)]
this assert seems to be wrong for the java frontend (and the C frontends never set peculiarity anyway)

[r27224]

14 years agofix bug where compound_graph_pathe were consider null
Matthias Braun [Fri, 26 Feb 2010 13:29:27 +0000 (13:29 +0000)]
fix bug where compound_graph_pathe were consider null

[r27223]

14 years agoRemove the ugly and write-only variable cur_reg_set.
Christoph Mallon [Thu, 25 Feb 2010 12:44:16 +0000 (12:44 +0000)]
Remove the ugly and write-only variable cur_reg_set.

[r27219]

14 years agoSimplify code: Do not handle Minus when creating immediates. The middle end should...
Christoph Mallon [Wed, 24 Feb 2010 15:53:45 +0000 (15:53 +0000)]
Simplify code: Do not handle Minus when creating immediates. The middle end should handle this.

[r27216]

14 years agocleanups and bugfixes in the tarval module and a new lower-level tarval interface...
Matthias Braun [Wed, 24 Feb 2010 15:04:40 +0000 (15:04 +0000)]
cleanups and bugfixes in the tarval module and a new lower-level tarval interface 'new_integer_tarval_from_str'

[r27211]

14 years agoFix a gammel-bug: try_create_Immediate() dropped the negation of Minus(Const())....
Christoph Mallon [Wed, 24 Feb 2010 14:12:35 +0000 (14:12 +0000)]
Fix a gammel-bug: try_create_Immediate() dropped the negation of Minus(Const()). In practice this never occurs, because constant folding folds the Minus.

[r27209]

14 years agoPut opening curly brace of functions on a separate line. Last time I missed some.
Christoph Mallon [Sun, 21 Feb 2010 06:46:02 +0000 (06:46 +0000)]
Put opening curly brace of functions on a separate line. Last time I missed some.

[r27195]

14 years agoPrefer get_mode_all_one() over get_tarval_all_one().
Christoph Mallon [Sat, 20 Feb 2010 11:58:19 +0000 (11:58 +0000)]
Prefer get_mode_all_one() over get_tarval_all_one().

[r27193]

14 years agoPrefer tarval_is_negative(x) over tarval_cmp(x, get_mode_null(get_tarval_mode(x))).
Christoph Mallon [Sat, 20 Feb 2010 11:49:20 +0000 (11:49 +0000)]
Prefer tarval_is_negative(x) over tarval_cmp(x, get_mode_null(get_tarval_mode(x))).

[r27191]

14 years agoPrefer get_mode_{max,min}() over get_tarval_{max,min}().
Christoph Mallon [Sat, 20 Feb 2010 11:49:17 +0000 (11:49 +0000)]
Prefer get_mode_{max,min}() over get_tarval_{max,min}().

[r27190]

14 years agoPrefer get_mode_null() over get_tarval_null().
Christoph Mallon [Sat, 20 Feb 2010 11:49:14 +0000 (11:49 +0000)]
Prefer get_mode_null() over get_tarval_null().

[r27189]

14 years agoPrefer get_mode_one() over get_tarval_one().
Christoph Mallon [Sat, 20 Feb 2010 11:49:07 +0000 (11:49 +0000)]
Prefer get_mode_one() over get_tarval_one().

[r27188]

14 years agoPrefer new_Const(get_mode_one(x)) over new_Const_long(x, 1).
Christoph Mallon [Sat, 20 Feb 2010 11:49:04 +0000 (11:49 +0000)]
Prefer new_Const(get_mode_one(x)) over new_Const_long(x, 1).

[r27187]

14 years agoCorrect indendation.
Christoph Mallon [Sat, 20 Feb 2010 08:57:19 +0000 (08:57 +0000)]
Correct indendation.

[r27184]

14 years agoRemove unused emitter templates.
Christoph Mallon [Sat, 20 Feb 2010 08:57:14 +0000 (08:57 +0000)]
Remove unused emitter templates.

[r27183]

14 years agoRemove address name SymConsts.
Christoph Mallon [Fri, 19 Feb 2010 21:50:39 +0000 (21:50 +0000)]
Remove address name SymConsts.

[r27182]

14 years agoUpdate/correct documentation about SymConsts.
Christoph Mallon [Fri, 19 Feb 2010 10:19:16 +0000 (10:19 +0000)]
Update/correct documentation about SymConsts.

[r27180]

14 years agosome cleanups in preparation for a new tarval_from_str interface
Matthias Braun [Thu, 18 Feb 2010 15:19:26 +0000 (15:19 +0000)]
some cleanups in preparation for a new tarval_from_str interface

[r27179]

14 years agoremove double declaration
Matthias Braun [Thu, 18 Feb 2010 14:49:36 +0000 (14:49 +0000)]
remove double declaration

[r27178]

14 years agoFixed bug, partially reverted to an earlier version.
Christian Helmer [Tue, 16 Feb 2010 17:01:36 +0000 (17:01 +0000)]
Fixed bug, partially reverted to an earlier version.

[r27176]

14 years agoRefactoring
Christian Helmer [Tue, 16 Feb 2010 15:08:17 +0000 (15:08 +0000)]
Refactoring

[r27175]

14 years agooutput 'x' instead of 'w' flag for text setions
Matthias Braun [Mon, 15 Feb 2010 13:45:37 +0000 (13:45 +0000)]
output 'x' instead of 'w' flag for text setions

[r27167]

14 years agoSome more cleanup: Put the return type and other specifiers on the same line as the...
Christoph Mallon [Sun, 14 Feb 2010 14:38:55 +0000 (14:38 +0000)]
Some more cleanup: Put the return type and other specifiers on the same line as the declarator of a function declaration.

[r27155]

14 years agoRepair URLs and comments, which were damaged almost six years ago.
Christoph Mallon [Sat, 13 Feb 2010 18:37:25 +0000 (18:37 +0000)]
Repair URLs and comments, which were damaged almost six years ago.

[r27154]

14 years agoPut a space after if/for/switch/while.
Christoph Mallon [Sat, 13 Feb 2010 18:33:58 +0000 (18:33 +0000)]
Put a space after if/for/switch/while.

[r27153]

14 years agoOutput proper local lables (starting with .L/L) for the PIC base, switch tables and...
Christoph Mallon [Sat, 13 Feb 2010 18:08:57 +0000 (18:08 +0000)]
Output proper local lables (starting with .L/L) for the PIC base, switch tables and stabs text marker, too.

[r27152]

14 years agoWe must be able to output 16 byte aligned long doubles, too.
Christoph Mallon [Sat, 13 Feb 2010 18:08:52 +0000 (18:08 +0000)]
We must be able to output 16 byte aligned long doubles, too.

[r27151]

14 years agofix warning, always use -m32 on mac assembler
Matthias Braun [Sat, 13 Feb 2010 14:37:03 +0000 (14:37 +0000)]
fix warning, always use -m32 on mac assembler

[r27150]

14 years agouse begnuas to emit block labels so we use the correct private prefix on mac and...
Matthias Braun [Sat, 13 Feb 2010 14:35:09 +0000 (14:35 +0000)]
use begnuas to emit block labels so we use the correct private prefix on mac and linux

[r27149]

14 years agofix intrinsics appearing in output
Matthias Braun [Sat, 13 Feb 2010 13:44:27 +0000 (13:44 +0000)]
fix intrinsics appearing in output

[r27148]

14 years agoUse .space instead of .zero. The latter is not known by all versions of GAS.
Christoph Mallon [Sat, 13 Feb 2010 12:54:32 +0000 (12:54 +0000)]
Use .space instead of .zero. The latter is not known by all versions of GAS.

[r27147]

14 years agoNon-local common symbols on mach-o must be .comm, not .lcomm, of course.
Christoph Mallon [Sat, 13 Feb 2010 12:44:48 +0000 (12:44 +0000)]
Non-local common symbols on mach-o must be .comm, not .lcomm, of course.

[r27146]

14 years agoPut opening curly brace of functions on a separate line.
Christoph Mallon [Sat, 13 Feb 2010 11:51:14 +0000 (11:51 +0000)]
Put opening curly brace of functions on a separate line.

[r27145]

14 years agoIgnore generated files.
Christoph Mallon [Sat, 13 Feb 2010 11:29:01 +0000 (11:29 +0000)]
Ignore generated files.

[r27144]

14 years agoRemove whitespace at EOL, remove empty lines at beginning and EOF, add missing newlin...
Christoph Mallon [Sat, 13 Feb 2010 11:17:42 +0000 (11:17 +0000)]
Remove whitespace at EOL, remove empty lines at beginning and EOF, add missing newline at EOF.

[r27143]

14 years agofix linkonce for functions
Matthias Braun [Fri, 12 Feb 2010 23:50:20 +0000 (23:50 +0000)]
fix linkonce for functions

[r27142]

14 years agofix
Matthias Braun [Fri, 12 Feb 2010 22:52:29 +0000 (22:52 +0000)]
fix

[r27141]

14 years agocorrect handling of local commons
Matthias Braun [Fri, 12 Feb 2010 22:34:41 +0000 (22:34 +0000)]
correct handling of local commons

[r27139]

14 years agoreimplement macho
Matthias Braun [Fri, 12 Feb 2010 21:57:05 +0000 (21:57 +0000)]
reimplement macho

[r27138]

14 years agoimplement several new section types including comdat for ELF, this potentially breaks...
Matthias Braun [Fri, 12 Feb 2010 17:54:53 +0000 (17:54 +0000)]
implement several new section types including comdat for ELF, this potentially breaks COFF and MACHO (will fix it asap)

[r27136]

14 years agofix warning
Matthias Braun [Fri, 12 Feb 2010 17:49:02 +0000 (17:49 +0000)]
fix warning

[r27134]

14 years agodon't ignore entities in Sels
Matthias Braun [Fri, 12 Feb 2010 17:48:39 +0000 (17:48 +0000)]
don't ignore entities in Sels

[r27133]

14 years agoexport/import visibility and linkageflags
Matthias Braun [Fri, 12 Feb 2010 16:12:12 +0000 (16:12 +0000)]
export/import visibility and linkageflags

[r27131]

14 years agoremove pointless message
Matthias Braun [Fri, 12 Feb 2010 14:34:24 +0000 (14:34 +0000)]
remove pointless message

[r27130]

14 years agoput my notes into the code so they don't get lost. Removed some unused stuff
Matthias Braun [Fri, 12 Feb 2010 08:50:51 +0000 (08:50 +0000)]
put my notes into the code so they don't get lost. Removed some unused stuff

[r27129]

14 years agoUpdate version.
Michael Beck [Thu, 11 Feb 2010 15:01:03 +0000 (15:01 +0000)]
Update version.

[r27125]

14 years agoAdd pass creating for loop inversion, unrolling, peeling and mux lowering.
Michael Beck [Thu, 11 Feb 2010 14:54:29 +0000 (14:54 +0000)]
Add pass creating for loop inversion, unrolling, peeling and mux lowering.

[r27123]

14 years agoFixed fehler176.
Sebastian Buchwald [Thu, 11 Feb 2010 14:49:36 +0000 (14:49 +0000)]
Fixed fehler176.

[r27122]

14 years agoKicked complicated but useless if.
Michael Beck [Thu, 11 Feb 2010 13:59:30 +0000 (13:59 +0000)]
Kicked complicated but useless if.

[r27121]

14 years agoDon't use malloc inside libFirm.
Michael Beck [Thu, 11 Feb 2010 13:54:14 +0000 (13:54 +0000)]
Don't use malloc inside libFirm.
Kicked useless memory allocation and casts.

[r27120]

14 years agoBugFix: fixed list_for_each_safe() instance.
Michael Beck [Thu, 11 Feb 2010 13:49:31 +0000 (13:49 +0000)]
BugFix: fixed list_for_each_safe() instance.
C99 feature removed.

[r27119]

14 years agoC99 feature removed.
Michael Beck [Thu, 11 Feb 2010 13:45:44 +0000 (13:45 +0000)]
C99 feature removed.

[r27118]

14 years agoReformat ugly if sequence and renamed variables to make it mode readable.
Michael Beck [Thu, 11 Feb 2010 13:45:09 +0000 (13:45 +0000)]
Reformat ugly if sequence and renamed variables to make it mode readable.
Moved comments AFTER the ifs (where they belong to).

[r27117]

14 years agofix weak external functions
Matthias Braun [Thu, 11 Feb 2010 12:27:37 +0000 (12:27 +0000)]
fix weak external functions

[r27116]

14 years agodo not free the graph after emitting it (this should only change the peak memory...
Matthias Braun [Thu, 11 Feb 2010 12:27:09 +0000 (12:27 +0000)]
do not free the graph after emitting it (this should only change the peak memory allocation of firm marginally). The gas dumper needs the irg info sometimes.

[r27115]

14 years agoRemoved ir_common_linkages enum (wrong and not helpful)
Olaf Liebe [Thu, 11 Feb 2010 11:49:50 +0000 (11:49 +0000)]
Removed ir_common_linkages enum (wrong and not helpful)

[r27114]

14 years agoFixed name mangling for private entities
Olaf Liebe [Thu, 11 Feb 2010 11:33:55 +0000 (11:33 +0000)]
Fixed name mangling for private entities

[r27113]

14 years agoallow several odd weak combinations
Matthias Braun [Thu, 11 Feb 2010 00:18:43 +0000 (00:18 +0000)]
allow several odd weak combinations

[r27110]

14 years agosupport for local common symbols (whatever that is good for); introduce ir_visibility...
Matthias Braun [Wed, 10 Feb 2010 23:05:45 +0000 (23:05 +0000)]
support for local common symbols (whatever that is good for); introduce ir_visibility_private (not tested yet as they don't occur in C)

[r27109]

14 years agoput zero initialized entities into bss section (not just uninitialized ones); TLS...
Matthias Braun [Wed, 10 Feb 2010 22:09:13 +0000 (22:09 +0000)]
put zero initialized entities into bss section (not just uninitialized ones); TLS entities should go to tbss or tdata

[r27108]

14 years agoFixed VRP bugs.
Sebastian Buchwald [Wed, 10 Feb 2010 15:28:15 +0000 (15:28 +0000)]
Fixed VRP bugs.

[r27107]

14 years agofix
Matthias Braun [Wed, 10 Feb 2010 10:29:10 +0000 (10:29 +0000)]
fix

[r27106]

14 years agomake statev_sql commandlines similar to mysql commandlines
Matthias Braun [Wed, 10 Feb 2010 10:00:16 +0000 (10:00 +0000)]
make statev_sql commandlines similar to mysql commandlines

[r27103]

14 years agoFix bug when handling pn_Cmp_Lg with vrp info
Jonas Fietz [Wed, 10 Feb 2010 03:33:51 +0000 (03:33 +0000)]
Fix bug when handling pn_Cmp_Lg with vrp info

[r27101]

14 years agoAdd optimizations for Proj after Cond using VRP
Jonas Fietz [Wed, 10 Feb 2010 03:22:52 +0000 (03:22 +0000)]
Add optimizations for Proj after Cond using VRP

This uses the vrp information to evaluate int projs.
This optimizes cases like:
x |= 33;
y = x & 96;
to y = 1;

[r27100]

14 years agoAdd some optimizations for jumpthreading using vrp information
Jonas Fietz [Wed, 10 Feb 2010 02:47:40 +0000 (02:47 +0000)]
Add some optimizations for jumpthreading using vrp information

This uses the vrp information to expand the handling for constants to
handling ranges as well.

[r27098]

14 years agoAdd basic optimizations based on vrp info
Jonas Fietz [Wed, 10 Feb 2010 02:47:39 +0000 (02:47 +0000)]
Add basic optimizations based on vrp info

This adds some basic optimizations, e.g. to calculate the value for some
nodes if it can be determined.

[r27097]

14 years agoAdd analysis for vrp information
Jonas Fietz [Wed, 10 Feb 2010 02:47:38 +0000 (02:47 +0000)]
Add analysis for vrp information

This commit adds the basic analysis needed to derive vrp information. It
should not run infinetely, but there may be border cases.
There might be error conditions for which there are no checks yet.
Also, a lot of the derivations can still be improved.

[r27096]

14 years agoAdd dumper code for VRP information
Jonas Fietz [Wed, 10 Feb 2010 02:47:38 +0000 (02:47 +0000)]
Add dumper code for VRP information

This commit adds the code and prototypes for dumping vrp information

[r27095]

14 years agoAdd structures and initialization for VRP
Jonas Fietz [Wed, 10 Feb 2010 02:47:36 +0000 (02:47 +0000)]
Add structures and initialization for VRP

This commit adds the neccessary attributes to each ir_node. It also adds
the initialization code and some prototypes for the graph_pass and some
support functions.

[r27094]

14 years agoFixed sizeof(long)-dependent case sorting and signedness of if-cascade comparisons
Olaf Liebe [Tue, 9 Feb 2010 14:02:01 +0000 (14:02 +0000)]
Fixed sizeof(long)-dependent case sorting and signedness of if-cascade comparisons

[r27093]

14 years agoAdded missing do_loop_unrolling
Christian Helmer [Tue, 9 Feb 2010 13:11:35 +0000 (13:11 +0000)]
Added missing do_loop_unrolling

[r27092]

14 years agomake firm compile again
Matthias Braun [Mon, 8 Feb 2010 23:30:09 +0000 (23:30 +0000)]
make firm compile again

[r27091]

14 years agoin case of missing tables create them even in update mode
Matthias Braun [Mon, 8 Feb 2010 23:16:36 +0000 (23:16 +0000)]
in case of missing tables create them even in update mode

[r27090]

14 years agocparser now knows 'unroll-loops'.
Christian Helmer [Mon, 8 Feb 2010 16:32:46 +0000 (16:32 +0000)]
cparser now knows 'unroll-loops'.

[r27088]

14 years agocleanup rework and extend statev_sql.py; it should be faster now and has a new mode...
Matthias Braun [Sun, 7 Feb 2010 23:16:32 +0000 (23:16 +0000)]
cleanup rework and extend statev_sql.py; it should be faster now and has a new mode to append results to an existing DB

[r27086]

14 years agoMux -> Abs works for unordered compare ...
Michael Beck [Sun, 7 Feb 2010 18:09:24 +0000 (18:09 +0000)]
Mux -> Abs works for unordered compare ...

[r27083]

14 years agoReverted r27079. Seems to be wrong.
Michael Beck [Sun, 7 Feb 2010 16:55:18 +0000 (16:55 +0000)]
Reverted r27079. Seems to be wrong.

[r27082]

14 years agoBugFix: ins_permuted means inversed flags, not negated ...
Michael Beck [Sat, 6 Feb 2010 00:31:02 +0000 (00:31 +0000)]
BugFix: ins_permuted means inversed flags, not negated ...

[r27079]

14 years agoFixed setcc transform:
Michael Beck [Sat, 6 Feb 2010 00:09:00 +0000 (00:09 +0000)]
Fixed setcc transform:
- test for t ==1 AFTER f == 0: this fixes fehler035.c
- disable sbb creation: reloader might change the cmp instruction yet

[r27078]

14 years agoconstructors/destructors must not have a name
Matthias Braun [Fri, 5 Feb 2010 22:28:10 +0000 (22:28 +0000)]
constructors/destructors must not have a name

[r27077]

14 years agoDo not emit a label if a entity has no name.
Christoph Mallon [Fri, 5 Feb 2010 22:23:49 +0000 (22:23 +0000)]
Do not emit a label if a entity has no name.

[r27076]

14 years agoSupport dtor sections on Mach-O.
Christoph Mallon [Fri, 5 Feb 2010 22:23:21 +0000 (22:23 +0000)]
Support dtor sections on Mach-O.

[r27075]

14 years agohack for mac
Matthias Braun [Fri, 5 Feb 2010 20:34:41 +0000 (20:34 +0000)]
hack for mac

[r27064]

14 years agomac gas doesn't get .octa
Matthias Braun [Fri, 5 Feb 2010 20:17:30 +0000 (20:17 +0000)]
mac gas doesn't get .octa

[r27063]

14 years agofix all pic bases I could find
Matthias Braun [Fri, 5 Feb 2010 20:03:41 +0000 (20:03 +0000)]
fix all pic bases I could find

[r27062]

14 years agofix another PIC problem
Matthias Braun [Fri, 5 Feb 2010 19:27:50 +0000 (19:27 +0000)]
fix another PIC problem

[r27061]

14 years agotry to fix PIC commons
Matthias Braun [Fri, 5 Feb 2010 19:20:56 +0000 (19:20 +0000)]
try to fix PIC commons

[r27060]

14 years agoEmit the symbol of PIC trampolines.
Christoph Mallon [Fri, 5 Feb 2010 19:11:43 +0000 (19:11 +0000)]
Emit the symbol of PIC trampolines.

[r27058]

14 years agobring back PIC support
Matthias Braun [Fri, 5 Feb 2010 18:53:55 +0000 (18:53 +0000)]
bring back PIC support

[r27057]

14 years agoa new garbage collection pass less conservative than gc_irgs (but does not respect...
Matthias Braun [Fri, 5 Feb 2010 18:30:05 +0000 (18:30 +0000)]
a new garbage collection pass less conservative than gc_irgs (but does not respect properties of object-oriented programs)

[r27056]

14 years agorevivie max_irg_visited
Matthias Braun [Fri, 5 Feb 2010 18:01:00 +0000 (18:01 +0000)]
revivie max_irg_visited

[r27055]

14 years agomake irg_walk_2 public
Matthias Braun [Fri, 5 Feb 2010 18:00:46 +0000 (18:00 +0000)]
make irg_walk_2 public

[r27054]

14 years agoNew setcc framework can handle all mux_is_abs(..., Const, Const) using set and up...
Michael Beck [Fri, 5 Feb 2010 09:29:30 +0000 (09:29 +0000)]
New setcc framework can handle all mux_is_abs(..., Const, Const) using set and up to 3 instructions ...

[r27053]

14 years agoexport ia32_immediate_from_long()
Michael Beck [Fri, 5 Feb 2010 09:28:29 +0000 (09:28 +0000)]
export ia32_immediate_from_long()

[r27052]

14 years agoattempt to fix compound_graph stuff
Matthias Braun [Thu, 4 Feb 2010 22:17:19 +0000 (22:17 +0000)]
attempt to fix compound_graph stuff

[r27048]

14 years agooops
Matthias Braun [Thu, 4 Feb 2010 20:34:43 +0000 (20:34 +0000)]
oops

[r27046]

14 years agouse more IR_RESOURCE_TYPE_VISITED, remove pointless inc_master_type_visited calls
Matthias Braun [Thu, 4 Feb 2010 20:32:44 +0000 (20:32 +0000)]
use more IR_RESOURCE_TYPE_VISITED, remove pointless inc_master_type_visited calls

[r27045]

14 years agointroduce IR_RESOURCE_TYPE_VISITED
Matthias Braun [Thu, 4 Feb 2010 20:27:31 +0000 (20:27 +0000)]
introduce IR_RESOURCE_TYPE_VISITED

[r27044]