libfirm
13 years agoHandle some cases of </<=/>=/> comparisons in the fixpoint vrp.
Christoph Mallon [Sun, 6 Feb 2011 18:36:30 +0000 (18:36 +0000)]
Handle some cases of </<=/>=/> comparisons in the fixpoint vrp.

[r28334]

13 years agoAdd a hint about the infamous pn_Cmp_Lg/Ne mixup in the assertion message of verify_n...
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]

13 years agoProperly check whether sscanf() succeeded.
Christoph Mallon [Sun, 6 Feb 2011 18:36:24 +0000 (18:36 +0000)]
Properly check whether sscanf() succeeded.

[r28332]

13 years agoReplace strcpy()+strcat() song and dance by a single sprintf().
Christoph Mallon [Sun, 6 Feb 2011 18:36:21 +0000 (18:36 +0000)]
Replace strcpy()+strcat() song and dance by a single sprintf().

[r28331]

13 years agoFix several size_t related signed/unsigned warnings.
Christoph Mallon [Sun, 6 Feb 2011 18:36:17 +0000 (18:36 +0000)]
Fix several size_t related signed/unsigned warnings.

[r28330]

13 years agoRemove surplus {}.
Christoph Mallon [Sun, 6 Feb 2011 18:36:10 +0000 (18:36 +0000)]
Remove surplus {}.

[r28329]

13 years agoRemoved unused parameter from_step of be_get_next_use().
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]

13 years agoFixed size_t related warnings by isolating PTR_TO_INT macros.
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]

13 years agoSprinkle const on the in array of node constructors with variable arity.
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]

13 years agoFixed more size_T related warnings.
Michael Beck [Thu, 3 Feb 2011 21:51:17 +0000 (21:51 +0000)]
Fixed more size_T related warnings.

[r28292]

13 years agoBugFix: when we create a new Conv node in combo's exchange_leader(), this irn has...
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]

13 years agoadd #include <stddef.h>
Julius Neuffer [Thu, 3 Feb 2011 13:48:09 +0000 (13:48 +0000)]
add #include <stddef.h>

[r28289]

13 years agoCorrect typo in comment.
Christoph Mallon [Mon, 31 Jan 2011 10:18:11 +0000 (10:18 +0000)]
Correct typo in comment.

[r28287]

13 years agoRemove pointless assert: size_t nelts is always >= 0.
Christoph Mallon [Mon, 31 Jan 2011 10:18:10 +0000 (10:18 +0000)]
Remove pointless assert: size_t nelts is always >= 0.

[r28286]

13 years agoAdd #include for size_t.
Christoph Mallon [Mon, 31 Jan 2011 10:18:09 +0000 (10:18 +0000)]
Add #include for size_t.

[r28285]

13 years agoMore size_t related changes.
Michael Beck [Sun, 30 Jan 2011 15:23:18 +0000 (15:23 +0000)]
More size_t related changes.

[r28282]

13 years agoAPI change: lower_intrinsics() uses size_t for length now.
Michael Beck [Sun, 30 Jan 2011 15:22:58 +0000 (15:22 +0000)]
API change: lower_intrinsics() uses size_t for length now.

[r28281]

13 years agoSimplyfied firm arrays by deleting useless macro and union.
Michael Beck [Sat, 29 Jan 2011 03:07:07 +0000 (03:07 +0000)]
Simplyfied firm arrays by deleting useless macro and union.

[r28280]

13 years agopdeq_len() returns size_t now, switch the internal types of pdeq to size_t.
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]

13 years agoFixed size_t related warnings in macros.
Michael Beck [Fri, 28 Jan 2011 01:20:58 +0000 (01:20 +0000)]
Fixed size_t related warnings in macros.

[r28278]

13 years agoFixed firmEvaluator debug build.
Michael Beck [Fri, 28 Jan 2011 01:13:57 +0000 (01:13 +0000)]
Fixed firmEvaluator debug build.

[r28277]

13 years agoFixed more size_t related warnings.
Michael Beck [Fri, 28 Jan 2011 01:13:44 +0000 (01:13 +0000)]
Fixed more size_t related warnings.

[r28276]

13 years agoFixed a lot of size_t related warnings, most of them due to array implementation...
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]

13 years agoSwitch array to size_t for length parameter ...
Michael Beck [Mon, 24 Jan 2011 23:31:13 +0000 (23:31 +0000)]
Switch array to size_t for length parameter ...

[r28271]

13 years agoFixed broken refactoring of r28264.
Michael Beck [Mon, 24 Jan 2011 23:30:57 +0000 (23:30 +0000)]
Fixed broken refactoring of r28264.

[r28270]

13 years agoFixed size_t issues.
Michael Beck [Mon, 24 Jan 2011 00:27:20 +0000 (00:27 +0000)]
Fixed size_t issues.

[r28268]

13 years agoSwitch pqueue to size_t.
Michael Beck [Mon, 24 Jan 2011 00:27:06 +0000 (00:27 +0000)]
Switch pqueue to size_t.

[r28267]

13 years agoFixed some size_t related warnings.
Michael Beck [Mon, 24 Jan 2011 00:22:16 +0000 (00:22 +0000)]
Fixed some size_t related warnings.

[r28266]

13 years agoFixed wrong type cast spotted by the intel compiler in our portale obstack.h.
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]

13 years agoAmendment of r28263 which was committed too early.
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]

13 years agoFixed more size_t related warnings, one interface change.
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]

13 years agoFixed r28259 which broke hh and h modifier.
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]

13 years agova_arg must be used with int instead of char/short. All integer arguments are at...
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]

13 years agoCorrect signed/unsigned mismatches due to size_t.
Christoph Mallon [Wed, 19 Jan 2011 13:02:23 +0000 (13:02 +0000)]
Correct signed/unsigned mismatches due to size_t.

[r28258]

13 years agoRemove assert, which generates a warning, because a variable of type size_t is always...
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]

13 years agoInclude stddef.h for size_t.
Christoph Mallon [Wed, 19 Jan 2011 13:02:19 +0000 (13:02 +0000)]
Include stddef.h for size_t.

[r28256]

13 years agoLet PTR_TO_INT return ptrdiff_t now instead of int.
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]

13 years agoFixed some size_t related warnings.
Michael Beck [Tue, 18 Jan 2011 23:49:31 +0000 (23:49 +0000)]
Fixed some size_t related warnings.

[r28254]

13 years agoSwitched set, pset, eset to size_t, hash remains unsigned.
Michael Beck [Tue, 18 Jan 2011 23:49:12 +0000 (23:49 +0000)]
Switched set, pset, eset to size_t, hash remains unsigned.

[r28253]

13 years agoLet the length of tarval be of type size_t.
Michael Beck [Tue, 18 Jan 2011 21:38:47 +0000 (21:38 +0000)]
Let the length of tarval be of type size_t.

[r28251]

13 years agoadd another special case to begnuas so string-sub-initializer are emitted as .string too
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]

13 years agoBail out if we do not know how to assemble CPUID.
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]

13 years agoDo not use b (ebx) as asm constraint, when compiling with __PIC__. GCC cannot handle...
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]

13 years agoRemove NOP-cast.
Christoph Mallon [Mon, 17 Jan 2011 15:38:30 +0000 (15:38 +0000)]
Remove NOP-cast.

[r28246]

13 years agocleanup and simplify phi-construction code
Matthias Braun [Tue, 11 Jan 2011 19:46:48 +0000 (19:46 +0000)]
cleanup and simplify phi-construction code

[r28242]

13 years agoRemoved old and unused support for sorted arrays.
Michael Beck [Sat, 8 Jan 2011 21:33:10 +0000 (21:33 +0000)]
Removed old and unused support for sorted arrays.

[r28241]

13 years agoremove get_irn_modename, get_irn_modeident from public API. It's unclear why we need...
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]

13 years agofix doxygen warnings
Matthias Braun [Sat, 8 Jan 2011 12:32:22 +0000 (12:32 +0000)]
fix doxygen warnings

[r28239]

13 years agoautomatically generate node constructor declarations
Matthias Braun [Sat, 8 Jan 2011 12:32:19 +0000 (12:32 +0000)]
automatically generate node constructor declarations

[r28238]

13 years agoadd comments to attributes and inputs in spec file
Matthias Braun [Sat, 8 Jan 2011 12:32:17 +0000 (12:32 +0000)]
add comments to attributes and inputs in spec file

[r28237]

13 years agokill the niymap exception from generator
Matthias Braun [Sat, 8 Jan 2011 12:32:15 +0000 (12:32 +0000)]
kill the niymap exception from generator

[r28236]

13 years agoremove special case with ir_cons_flags argument
Matthias Braun [Sat, 8 Jan 2011 12:32:13 +0000 (12:32 +0000)]
remove special case with ir_cons_flags argument

[r28235]

13 years agomove Proj attributes into a proj_attr struct, so we can get rid of more special cases
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]

13 years agoremove the 'special-constructor' feature. This removes a bunch of strange exceptions...
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]

13 years agoput node descriptions into the spec file
Matthias Braun [Sat, 8 Jan 2011 12:32:04 +0000 (12:32 +0000)]
put node descriptions into the spec file

[r28232]

13 years agojava_add parts are specified in jFirm now
Matthias Braun [Sat, 8 Jan 2011 12:32:02 +0000 (12:32 +0000)]
java_add parts are specified in jFirm now

[r28231]

13 years agoremove unnecessary line-endings from beginning of generated files
Matthias Braun [Sat, 8 Jan 2011 12:32:01 +0000 (12:32 +0000)]
remove unnecessary line-endings from beginning of generated files

[r28230]

13 years agodo not include automatically generated files into version control
Matthias Braun [Sat, 8 Jan 2011 12:31:59 +0000 (12:31 +0000)]
do not include automatically generated files into version control

[r28229]

13 years agoadd type verifier: entities in global types must have names
Matthias Braun [Sat, 8 Jan 2011 12:31:56 +0000 (12:31 +0000)]
add type verifier: entities in global types must have names

[r28228]

13 years agofix warning
Matthias Braun [Sat, 8 Jan 2011 11:04:27 +0000 (11:04 +0000)]
fix warning

[r28227]

13 years agoneed to include stdlib.h for size_t
Matthias Braun [Sat, 8 Jan 2011 11:04:25 +0000 (11:04 +0000)]
need to include stdlib.h for size_t

[r28226]

13 years agowe cannot use the printf attribute if we have custom format specifiers
Matthias Braun [Sat, 8 Jan 2011 11:04:22 +0000 (11:04 +0000)]
we cannot use the printf attribute if we have custom format specifiers

[r28225]

13 years agofix whitespace/indentation of loop.c (again)
Matthias Braun [Sat, 8 Jan 2011 11:04:19 +0000 (11:04 +0000)]
fix whitespace/indentation of loop.c (again)

[r28224]

13 years agoFixed doxygen comments for ir_printf and friends, fixed printf attribute handling.
Michael Beck [Sat, 8 Jan 2011 01:09:28 +0000 (01:09 +0000)]
Fixed doxygen comments for ir_printf and friends, fixed printf attribute handling.

[r28223]

13 years agoFurther improved lc_printf() and friends.
Michael Beck [Sat, 8 Jan 2011 00:26:48 +0000 (00:26 +0000)]
Further improved lc_printf() and friends.

- add support for h and hh type modifier
- add __attribute__((format ...)) for all printf-like functions
- fixed size_t related warnings

[r28222]

13 years agoFixed some 64bit warnings because of mixing size_t and other types.
Michael Beck [Thu, 6 Jan 2011 23:36:57 +0000 (23:36 +0000)]
Fixed some 64bit warnings because of mixing size_t and other types.

[r28221]

13 years agofix memory leak
Matthias Braun [Thu, 6 Jan 2011 16:24:40 +0000 (16:24 +0000)]
fix memory leak

[r28220]

13 years agoimplement ASM import/export
Matthias Braun [Thu, 6 Jan 2011 16:18:58 +0000 (16:18 +0000)]
implement ASM import/export

[r28219]

13 years agoadd functions for generic list im/exporting
Matthias Braun [Thu, 6 Jan 2011 16:18:56 +0000 (16:18 +0000)]
add functions for generic list im/exporting

[r28218]

13 years agorework string reading/writing
Matthias Braun [Thu, 6 Jan 2011 16:18:54 +0000 (16:18 +0000)]
rework string reading/writing

[r28217]

13 years agocleanup reading/writing of long/int/unsigned values
Matthias Braun [Thu, 6 Jan 2011 16:18:52 +0000 (16:18 +0000)]
cleanup reading/writing of long/int/unsigned values

[r28216]

13 years agoyou can specify in the spec now for which nodes no standard import/export code is...
Matthias Braun [Thu, 6 Jan 2011 16:18:47 +0000 (16:18 +0000)]
you can specify in the spec now for which nodes no standard import/export code is generated; fix bug with Proj nodes block

[r28215]

13 years agoPartly revert r28208 by using ir_printf with %zu format for size_t.
Michael Beck [Thu, 6 Jan 2011 01:49:00 +0000 (01:49 +0000)]
Partly revert r28208 by using ir_printf with %zu format for size_t.

[r28214]

13 years agoImproved the comment ... a bit.
Michael Beck [Thu, 6 Jan 2011 01:48:51 +0000 (01:48 +0000)]
Improved the comment ... a bit.

[r28213]

13 years agoEnable lc_printf and friends handling of j, t, and z length modifier.
Michael Beck [Thu, 6 Jan 2011 01:48:42 +0000 (01:48 +0000)]
Enable lc_printf and friends handling of j, t, and z length modifier.

Add a work-around for non-C99 MSCRT.

Use ir_printf now instead of printf.

[r28212]

13 years agofix irio not working correctly anymore after MacroBlocks were removed
Matthias Braun [Wed, 5 Jan 2011 17:28:45 +0000 (17:28 +0000)]
fix irio not working correctly anymore after MacroBlocks were removed

[r28210]

13 years agoavoid current_ir_graph in irio
Matthias Braun [Wed, 5 Jan 2011 17:28:43 +0000 (17:28 +0000)]
avoid current_ir_graph in irio

[r28209]

13 years agofix warnings about wrong format specifiers for size_t
Matthias Braun [Wed, 5 Jan 2011 17:28:39 +0000 (17:28 +0000)]
fix warnings about wrong format specifiers for size_t

[r28208]

13 years agoConstify.
Michael Beck [Tue, 28 Dec 2010 13:12:51 +0000 (13:12 +0000)]
Constify.

[r28204]

13 years agoReplaced magic constants by an enum.
Michael Beck [Tue, 28 Dec 2010 13:12:40 +0000 (13:12 +0000)]
Replaced magic constants by an enum.

[r28203]

13 years agoAdd and fix some comments.
Michael Beck [Tue, 28 Dec 2010 13:12:30 +0000 (13:12 +0000)]
Add and fix some comments.

[r28202]

13 years agoFixed typo.
Michael Beck [Tue, 28 Dec 2010 13:12:19 +0000 (13:12 +0000)]
Fixed typo.

[r28201]

13 years agoSwitch bitset.h/raw_bitset.h to size_t instead of unsigned size parameters.
Michael Beck [Mon, 27 Dec 2010 22:29:47 +0000 (22:29 +0000)]
Switch bitset.h/raw_bitset.h to size_t instead of unsigned size parameters.

Note that this is an ugly change because ALL index variables used inside
bitset_foreach() MUST be switched to size_t now, or the magical

elm != (size_t) -1;

will fail :-(

[r28199]

13 years agoFixed warning because of wrong type.
Michael Beck [Mon, 27 Dec 2010 22:29:27 +0000 (22:29 +0000)]
Fixed warning because of wrong type.

[r28198]

13 years agoRemoved yet unused variable.
Michael Beck [Wed, 22 Dec 2010 00:54:33 +0000 (00:54 +0000)]
Removed yet unused variable.

[r28197]

13 years agoFixed some 64bit warnings by using size_t and fixing compare functions.
Michael Beck [Wed, 22 Dec 2010 00:54:22 +0000 (00:54 +0000)]
Fixed some 64bit warnings by using size_t and fixing compare functions.

[r28196]

13 years agoAdd support for Win64.
Michael Beck [Tue, 21 Dec 2010 02:09:06 +0000 (02:09 +0000)]
Add support for Win64.

[r28195]

13 years agoFixed some 64bit warnings by using size_t instead of unsigned.
Michael Beck [Tue, 21 Dec 2010 02:08:57 +0000 (02:08 +0000)]
Fixed some 64bit warnings by using size_t instead of unsigned.

[r28194]

13 years agoObstack: Deleted the special windows version, make Win64 warning free.
Michael Beck [Tue, 21 Dec 2010 02:08:45 +0000 (02:08 +0000)]
Obstack: Deleted the special windows version, make Win64 warning free.

Use PTR_INT_TYPE instead of long which is 32bit on Win64.

[r28193]

13 years agomake verifier independent of current_ir_graph
Matthias Braun [Wed, 15 Dec 2010 11:38:19 +0000 (11:38 +0000)]
make verifier independent of current_ir_graph

[r28189]

13 years agofurther extend API so parallel construction of multiple graphs is possible
Matthias Braun [Wed, 15 Dec 2010 11:38:15 +0000 (11:38 +0000)]
further extend API so parallel construction of multiple graphs is possible

[r28188]

13 years agoRemoved the arch_register_type_is() macro.
Michael Beck [Mon, 6 Dec 2010 19:01:56 +0000 (19:01 +0000)]
Removed the arch_register_type_is() macro.

Only makes it hard to search for arch_register_type_* flags.

[r28185]

13 years agoFixed memory leak, fixed some typos, add some doxygen docu.
Michael Beck [Mon, 6 Dec 2010 09:52:31 +0000 (09:52 +0000)]
Fixed memory leak, fixed some typos, add some doxygen docu.

[r28184]

13 years agoRestored somehow lost AMD Family 11h support.
Michael Beck [Mon, 6 Dec 2010 09:09:05 +0000 (09:09 +0000)]
Restored somehow lost AMD Family 11h support.

[r28183]

13 years agoImproved native detection further.
Michael Beck [Sat, 4 Dec 2010 11:20:04 +0000 (11:20 +0000)]
Improved native detection further.

- split out cmov and popcnt feature, can be detected by cpuid
- use feature flags even if not intel or amd cpu
- p6 instructions cannot be detected by feature bit, set them on
  architecture detection
- detect old Geode

[r28182]

13 years agoImproved AMD detection.
Michael Beck [Sat, 4 Dec 2010 10:20:27 +0000 (10:20 +0000)]
Improved AMD detection.

[r28181]

13 years agoInstead of panic() offer the native option only if running on x86 xpu.
Michael Beck [Sat, 4 Dec 2010 09:26:10 +0000 (09:26 +0000)]
Instead of panic() offer the native option only if running on x86 xpu.

[r28180]

13 years agoNative detection works on 32 and 64bit x86 cpus yet.
Michael Beck [Sat, 4 Dec 2010 09:21:36 +0000 (09:21 +0000)]
Native detection works on 32 and 64bit x86 cpus yet.

Allowed native 32bit code generation when running on 64bit x86.
Removed ebx save, gcc should handle this.
Enable native detection on windows again.

[r28179]

13 years agoautodetection is only possible when compiling for an x86 machine
Matthias Braun [Fri, 3 Dec 2010 08:36:48 +0000 (08:36 +0000)]
autodetection is only possible when compiling for an x86 machine

[r28177]

13 years agomake Makefile robust against deleted headers
Matthias Braun [Wed, 1 Dec 2010 13:55:01 +0000 (13:55 +0000)]
make Makefile robust against deleted headers

[r28176]