libfirm
16 years agoremove duplicated obstack.h declare obstack_printf
Matthias Braun [Sun, 30 Mar 2008 12:18:20 +0000 (12:18 +0000)]
remove duplicated obstack.h declare obstack_printf

[r18282]

16 years agoadd missing include
Matthias Braun [Sun, 30 Mar 2008 09:47:19 +0000 (09:47 +0000)]
add missing include

[r18281]

16 years agodon't rely on obstack hacks
Matthias Braun [Sun, 30 Mar 2008 09:46:33 +0000 (09:46 +0000)]
don't rely on obstack hacks

[r18280]

16 years agofix check for posix realtime extensions
Matthias Braun [Sat, 29 Mar 2008 23:00:33 +0000 (23:00 +0000)]
fix check for posix realtime extensions

[r18279]

16 years agofix check for posix realtime extensions
Matthias Braun [Sat, 29 Mar 2008 22:59:15 +0000 (22:59 +0000)]
fix check for posix realtime extensions

[r18278]

16 years agotest commit
Matthias Braun [Sat, 22 Mar 2008 12:59:40 +0000 (12:59 +0000)]
test commit

[r18213]

16 years agotestcase for new Confirm code
Michael Beck [Thu, 20 Mar 2008 02:30:18 +0000 (02:30 +0000)]
testcase for new Confirm code

[r18198]

16 years agosmall improvements:
Michael Beck [Thu, 20 Mar 2008 02:27:20 +0000 (02:27 +0000)]
small improvements:
- value_not_zero(): safely skip Minus and Abs nodes
- classify_value_sign(): handle Minus nodes

[r18197]

16 years agofixed comment
Michael Beck [Thu, 20 Mar 2008 02:25:32 +0000 (02:25 +0000)]
fixed comment

[r18196]

16 years agowhen propagating constants in the x == Const case, propagate them into users of x...
Michael Beck [Thu, 20 Mar 2008 02:24:42 +0000 (02:24 +0000)]
when propagating constants in the x == Const case, propagate them into users of x IFF users of users are in the effective block, see confirm.c example

[r18195]

16 years agois_Abs() added
Michael Beck [Thu, 20 Mar 2008 02:22:11 +0000 (02:22 +0000)]
is_Abs() added

[r18194]

16 years agoBugFix: scalar replacement should not remove volatile Loads/Stores
Michael Beck [Wed, 19 Mar 2008 17:35:54 +0000 (17:35 +0000)]
BugFix: scalar replacement should not remove volatile Loads/Stores

[r18184]

16 years agosetjump test
Matthias Braun [Wed, 19 Mar 2008 10:59:50 +0000 (10:59 +0000)]
setjump test

[r18173]

16 years ago- Fix comments
Christoph Mallon [Mon, 17 Mar 2008 12:58:26 +0000 (12:58 +0000)]
- Fix comments
- Remove stale assert
- Add Psi(t == f, t, f) -> f and Psi(t != f, t, f) -> t (was only implemented for f == 0)

[r18142]

16 years agoBelady2 fixes
Sebastian Hack [Sun, 16 Mar 2008 14:42:33 +0000 (14:42 +0000)]
Belady2 fixes

[r18135]

16 years agoAdded functions to set a range of bits to 1 or 0
Sebastian Hack [Sun, 16 Mar 2008 14:42:01 +0000 (14:42 +0000)]
Added functions to set a range of bits to 1 or 0

[r18134]

16 years agouse .word instead of .value, older gas don't support it
Michael Beck [Wed, 12 Mar 2008 00:08:57 +0000 (00:08 +0000)]
use .word instead of .value, older gas don't support it

[r18093]

16 years agoneed suffixes for mvf, mnf
Michael Beck [Wed, 12 Mar 2008 00:01:52 +0000 (00:01 +0000)]
need suffixes for mvf, mnf

[r18092]

16 years agoset the isa right
Michael Beck [Tue, 11 Mar 2008 23:53:54 +0000 (23:53 +0000)]
set the isa right

[r18091]

16 years agoinstructions with immediates are not commutative
Michael Beck [Tue, 11 Mar 2008 23:53:31 +0000 (23:53 +0000)]
instructions with immediates are not commutative

[r18090]

16 years agorefactored immediates:
Michael Beck [Tue, 11 Mar 2008 23:37:15 +0000 (23:37 +0000)]
refactored immediates:
 - now stored as long values (should be enough)
 - floating point values are emitted right

[r18089]

16 years agorefactored immediates:
Michael Beck [Tue, 11 Mar 2008 23:35:22 +0000 (23:35 +0000)]
refactored immediates:
 - now stored as long values (should be enough)
 - floating point values are emitted right

[r18088]

16 years agofixed CondJmp attributes
Michael Beck [Tue, 11 Mar 2008 20:11:26 +0000 (20:11 +0000)]
fixed CondJmp attributes

[r18081]

16 years agoset the global isa object
Michael Beck [Tue, 11 Mar 2008 20:10:33 +0000 (20:10 +0000)]
set the global isa object

[r18080]

16 years agouse assure_irg_outs()
Michael Beck [Tue, 11 Mar 2008 18:27:38 +0000 (18:27 +0000)]
use assure_irg_outs()

[r18074]

16 years agofix out flags for mode_T nodes
Matthias Braun [Tue, 11 Mar 2008 17:13:58 +0000 (17:13 +0000)]
fix out flags for mode_T nodes

[r18072]

16 years agoupdated be_AddSP semantics
Michael Beck [Tue, 11 Mar 2008 15:55:16 +0000 (15:55 +0000)]
updated be_AddSP semantics

[r18070]

16 years agowe do need stack:I|S...
Matthias Braun [Tue, 11 Mar 2008 15:34:50 +0000 (15:34 +0000)]
we do need stack:I|S...

[r18069]

16 years agostack:S is enough no need to specify I (explicitely)
Matthias Braun [Tue, 11 Mar 2008 15:25:35 +0000 (15:25 +0000)]
stack:S is enough no need to specify I (explicitely)

[r18068]

16 years agoreset the layout to undefined before new members are added to the frame type
Michael Beck [Tue, 11 Mar 2008 14:56:36 +0000 (14:56 +0000)]
reset the layout to undefined before new members are added to the frame type

[r18064]

16 years agouse kill_node() instead of exchange to improve reduce_adr_usage()
Michael Beck [Tue, 11 Mar 2008 12:33:51 +0000 (12:33 +0000)]
use kill_node() instead of exchange to improve reduce_adr_usage()

[r18060]

16 years agofind_address_taken_state() handle CopyB like a set of Loads/Stores that do NOT take...
Michael Beck [Tue, 11 Mar 2008 12:17:21 +0000 (12:17 +0000)]
find_address_taken_state() handle CopyB like a set of Loads/Stores that do NOT take the address
if no hidden conversion happens

[r18058]

16 years agouse optimize_graph_df() instead of old local_optimize()
Michael Beck [Mon, 10 Mar 2008 13:46:46 +0000 (13:46 +0000)]
use optimize_graph_df() instead of old local_optimize()

[r18046]

16 years agoupdated
Michael Beck [Mon, 10 Mar 2008 13:43:29 +0000 (13:43 +0000)]
updated

[r18045]

16 years agoupdated
Michael Beck [Mon, 10 Mar 2008 13:42:37 +0000 (13:42 +0000)]
updated

[r18044]

16 years agocode cleanup
Michael Beck [Mon, 10 Mar 2008 13:38:26 +0000 (13:38 +0000)]
code cleanup

[r18043]

16 years agofor twoscomplement convert AddP(P, Const<signed>) into AddP(P, Const<unsigned>),...
Michael Beck [Mon, 10 Mar 2008 13:34:14 +0000 (13:34 +0000)]
for twoscomplement convert AddP(P, Const<signed>) into AddP(P, Const<unsigned>), same for SubP

[r18042]

16 years agoassert that fixed structs/unions/classes aren
Matthias Braun [Mon, 10 Mar 2008 10:46:41 +0000 (10:46 +0000)]
assert that fixed structs/unions/classes aren

[r18037]

16 years ago- as Sel's from the frame type are not lowered anymore, we can safely remove the...
Michael Beck [Mon, 10 Mar 2008 10:43:55 +0000 (10:43 +0000)]
- as Sel's from the frame type are not lowered anymore, we can safely remove the assert(phase_high)
- indentation fixed

[r18035]

16 years agocopy_entity_own(): assert if the new type has already a fixed layout
Michael Beck [Mon, 10 Mar 2008 10:36:25 +0000 (10:36 +0000)]
copy_entity_own(): assert if the new type has already a fixed layout

[r18034]

16 years agoFixed:
Michael Beck [Mon, 10 Mar 2008 09:54:38 +0000 (09:54 +0000)]
Fixed:
 - names for base and normal address
 - check for different base entities more agressive
 - type base analysis wants original pointer for type check
Added:
 - classify_pointer() now always detects address_taken flag
 - more agressive offset skipping

[r18033]

16 years ago- rewrite and cleanup of memory disambiguator code, should also catch a few
Matthias Braun [Sun, 9 Mar 2008 18:21:26 +0000 (18:21 +0000)]
- rewrite and cleanup of memory disambiguator code, should also catch a few
   more cases now that were buggy before

[r18027]

16 years agofix debug message, always check for same base address with different offset first
Matthias Braun [Sun, 9 Mar 2008 15:07:54 +0000 (15:07 +0000)]
fix debug message, always check for same base address with different offset first

[r18025]

16 years agofehler 110
Matthias Braun [Sat, 8 Mar 2008 16:54:19 +0000 (16:54 +0000)]
fehler 110

[r18015]

16 years ago- fix parity label emitting using local assembler labels
Matthias Braun [Sat, 8 Mar 2008 16:17:22 +0000 (16:17 +0000)]
- fix parity label emitting using local assembler labels
- improve output a bit
- code cleanup

[r18013]

16 years agoRemoved edges ...
Michael Beck [Fri, 7 Mar 2008 17:35:06 +0000 (17:35 +0000)]
Removed edges ...

[r18005]

16 years agoremoved C99 features
Michael Beck [Fri, 7 Mar 2008 17:26:25 +0000 (17:26 +0000)]
removed C99 features

[r18004]

16 years agodisable edges after lowering for now...
Matthias Braun [Fri, 7 Mar 2008 16:48:23 +0000 (16:48 +0000)]
disable edges after lowering for now...

[r18002]

16 years agoa better version of a copyb lowerer
Matthias Braun [Fri, 7 Mar 2008 16:32:19 +0000 (16:32 +0000)]
a better version of a copyb lowerer

[r18000]

16 years agoinitial copyb lowerer
Michael Beck [Fri, 7 Mar 2008 10:55:59 +0000 (10:55 +0000)]
initial copyb lowerer

[r17989]

16 years agoenable more long long tests
Matthias Braun [Fri, 7 Mar 2008 10:07:56 +0000 (10:07 +0000)]
enable more long long tests

[r17988]

16 years agoa bit of code cleanup and reformating
Matthias Braun [Fri, 7 Mar 2008 10:02:00 +0000 (10:02 +0000)]
a bit of code cleanup and reformating

[r17987]

16 years agoimplement float to long long conversion
Matthias Braun [Fri, 7 Mar 2008 10:01:31 +0000 (10:01 +0000)]
implement float to long long conversion

[r17986]

16 years agosome belady3 fixes
Matthias Braun [Thu, 6 Mar 2008 17:17:42 +0000 (17:17 +0000)]
some belady3 fixes

[r17980]

16 years agoremove old buggy code
Matthias Braun [Thu, 6 Mar 2008 17:16:15 +0000 (17:16 +0000)]
remove old buggy code

[r17979]

16 years agoadd author
Matthias Braun [Thu, 6 Mar 2008 17:15:33 +0000 (17:15 +0000)]
add author

[r17978]

16 years agoallow empty initializers
Michael Beck [Thu, 6 Mar 2008 14:01:03 +0000 (14:01 +0000)]
allow empty initializers

[r17973]

16 years agoonly emit labels that are needed
Matthias Braun [Wed, 5 Mar 2008 09:50:34 +0000 (09:50 +0000)]
only emit labels that are needed

[r17967]

16 years agofix warnings
Matthias Braun [Wed, 5 Mar 2008 09:50:02 +0000 (09:50 +0000)]
fix warnings

[r17966]

16 years agofix warnings
Matthias Braun [Wed, 5 Mar 2008 09:49:35 +0000 (09:49 +0000)]
fix warnings

[r17965]

16 years agoDEL_ARR_F should not use a const pointer
Matthias Braun [Wed, 5 Mar 2008 09:48:51 +0000 (09:48 +0000)]
DEL_ARR_F should not use a const pointer

[r17964]

16 years agoset deleted attributes to NULL
Michael Beck [Tue, 4 Mar 2008 19:04:30 +0000 (19:04 +0000)]
set deleted attributes to NULL

[r17963]

16 years agoindentation changed
Michael Beck [Tue, 4 Mar 2008 19:03:32 +0000 (19:03 +0000)]
indentation changed

[r17962]

16 years ago- beware of useless code: when searching the left argument of a test instruction...
Michael Beck [Tue, 4 Mar 2008 13:56:23 +0000 (13:56 +0000)]
- beware of useless code: when searching the left argument of a test instruction, it might be NOT in the same block if it's a Unknown ... This fixes segfault5.c

[r17956]

16 years agoBugFix: when deleting keep-alives of already visited blocks, keep in mind
Michael Beck [Tue, 4 Mar 2008 13:32:09 +0000 (13:32 +0000)]
BugFix: when deleting keep-alives of already visited blocks, keep in mind
that new keep-alives could be added because the cf was changed ...
So do NOT delete these new KA ...
This fixes segfault4.c

[r17955]

16 years agoclean up code
Michael Beck [Tue, 4 Mar 2008 13:30:30 +0000 (13:30 +0000)]
clean up code

[r17954]

16 years agotest for new tail recursion eliminaton
Michael Beck [Tue, 4 Mar 2008 11:12:56 +0000 (11:12 +0000)]
test for new tail recursion eliminaton

[r17953]

16 years agoremoved useless environment
Michael Beck [Mon, 3 Mar 2008 16:14:47 +0000 (16:14 +0000)]
removed useless environment

[r17947]

16 years agoSupress warning
Michael Beck [Mon, 3 Mar 2008 16:13:03 +0000 (16:13 +0000)]
Supress warning

[r17946]

16 years agoImproved tail recursion optimization:
Michael Beck [Mon, 3 Mar 2008 16:10:49 +0000 (16:10 +0000)]
Improved tail recursion optimization:
Added support for
  return x + func()
  return x * func()
  return func() - x;
  return -func()

[r17945]

16 years agoAllow to restart SSA construction on a graph in phase high.
Michael Beck [Mon, 3 Mar 2008 16:05:37 +0000 (16:05 +0000)]
Allow to restart SSA construction on a graph in phase high.
After restarting, set_value()/get_value() can be used again!

[r17944]

16 years agocreate irg_set_nloc() and made it global visible
Michael Beck [Mon, 3 Mar 2008 16:03:53 +0000 (16:03 +0000)]
create irg_set_nloc() and made it global visible

[r17943]

16 years ago- renamed init_cons() to firm_init_cons()
Michael Beck [Mon, 3 Mar 2008 15:07:16 +0000 (15:07 +0000)]
- renamed init_cons() to firm_init_cons()
- made firm_alloc_frag_arr() global

[r17942]

16 years ago- some doxygen comments added
Michael Beck [Fri, 29 Feb 2008 13:52:17 +0000 (13:52 +0000)]
- some doxygen comments added
- code cleanup

[r17937]

16 years ago- fixed typos
Michael Beck [Fri, 29 Feb 2008 12:28:16 +0000 (12:28 +0000)]
- fixed typos
- use waitq_empty() instead of pdeq_empty()

[r17935]

16 years agouse waitq_empty() instead of pdeq_empty()
Michael Beck [Fri, 29 Feb 2008 12:26:33 +0000 (12:26 +0000)]
use waitq_empty() instead of pdeq_empty()

[r17934]

16 years agoinline_leave_functions() can now inline recursive calls
Michael Beck [Thu, 28 Feb 2008 17:31:51 +0000 (17:31 +0000)]
inline_leave_functions() can now inline recursive calls

[r17930]

16 years agonew_ir_node() uses always flexible array for End nodes
Michael Beck [Thu, 28 Feb 2008 17:30:20 +0000 (17:30 +0000)]
new_ir_node() uses always flexible array for End nodes

[r17929]

16 years agoclone_frame_type() now links old entities to new once and vice versa
Michael Beck [Thu, 28 Feb 2008 17:29:27 +0000 (17:29 +0000)]
clone_frame_type() now links old entities to new once and vice versa

[r17928]

16 years agoadd some comment
Michael Beck [Thu, 28 Feb 2008 17:28:32 +0000 (17:28 +0000)]
add some comment

[r17927]

16 years agocreate_irg_copy() implemented
Michael Beck [Thu, 28 Feb 2008 17:28:03 +0000 (17:28 +0000)]
create_irg_copy() implemented

[r17926]

16 years agomissing ; added
Michael Beck [Thu, 28 Feb 2008 13:18:38 +0000 (13:18 +0000)]
missing ; added

[r17920]

16 years agoadd missing MacroBlock copy
Michael Beck [Thu, 28 Feb 2008 13:08:57 +0000 (13:08 +0000)]
add missing MacroBlock copy

[r17918]

16 years agoclone_frame_type() implemented
Michael Beck [Thu, 28 Feb 2008 13:06:48 +0000 (13:06 +0000)]
clone_frame_type() implemented

[r17917]

16 years agouse new set_Block_MacroBlock() instead of set_irn_n(*,-1,*)
Michael Beck [Thu, 28 Feb 2008 12:41:23 +0000 (12:41 +0000)]
use new set_Block_MacroBlock() instead of set_irn_n(*,-1,*)

[r17916]

16 years agouse new set_Block_MacroBlock() instead of set_irn_n(*,-1,*)
Michael Beck [Thu, 28 Feb 2008 12:40:11 +0000 (12:40 +0000)]
use new set_Block_MacroBlock() instead of set_irn_n(*,-1,*)

[r17915]

16 years agouse set_nodes_block() instead of set_irn_n(*,-1,*)
Michael Beck [Thu, 28 Feb 2008 12:39:20 +0000 (12:39 +0000)]
use set_nodes_block() instead of set_irn_n(*,-1,*)

[r17914]

16 years agoset_Block_MacroBlock() added
Michael Beck [Thu, 28 Feb 2008 12:30:16 +0000 (12:30 +0000)]
set_Block_MacroBlock() added

[r17913]

16 years agoenable -restrict; use -m32 gcc option
Michael Beck [Thu, 28 Feb 2008 11:22:26 +0000 (11:22 +0000)]
enable -restrict; use -m32 gcc option

[r17912]

16 years agofixed indentation
Michael Beck [Tue, 26 Feb 2008 15:28:18 +0000 (15:28 +0000)]
fixed indentation

[r17871]

16 years ago- fixed comment
Michael Beck [Tue, 26 Feb 2008 14:23:46 +0000 (14:23 +0000)]
- fixed comment
- construnc an Unknown node instead of Const(<tarval_bad>) if no
  default_initialize_local_variable() callback is available

[r17869]

16 years agoadd comment
Michael Beck [Mon, 25 Feb 2008 16:23:08 +0000 (16:23 +0000)]
add comment

[r17861]

16 years agoAdd an DivRL for remainderless div nodes (we don't have to generate correction
Michael Beck [Fri, 22 Feb 2008 17:52:58 +0000 (17:52 +0000)]
Add an DivRL for remainderless div nodes (we don't have to generate correction
code than ...

[r17833]

16 years ago- remove x86 test, seems to be useless
Michael Beck [Fri, 22 Feb 2008 16:49:48 +0000 (16:49 +0000)]
- remove x86 test, seems to be useless
- switch off lftr() for now, still buggy (176.gcc fail)

[r17831]

16 years agoSeveral fixes for normal scheduler.
Christoph Mallon [Fri, 22 Feb 2008 16:37:10 +0000 (16:37 +0000)]
Several fixes for normal scheduler.

[r17829]

16 years agoBugfix:
Michael Beck [Fri, 22 Feb 2008 12:22:29 +0000 (12:22 +0000)]
Bugfix:
 - in the apply operation, a rc might be an (outer) IV, so check
   for the right IV before doing the replacement

[r17827]

16 years agoadded for upcoming release
Michael Beck [Thu, 21 Feb 2008 14:33:43 +0000 (14:33 +0000)]
added for upcoming release

[r17824]

16 years agoadded for upcoming release
Michael Beck [Thu, 21 Feb 2008 14:32:58 +0000 (14:32 +0000)]
added for upcoming release

[r17823]

16 years agobugfix: update_scc() must mark already seen SCC nodes, else a node might be put more...
Michael Beck [Thu, 21 Feb 2008 14:27:50 +0000 (14:27 +0000)]
bugfix: update_scc() must mark already seen SCC nodes, else a node might be put more than
once into the SCC (causing an endless loop in the linked list ...)

[r17822]

16 years agoremoved verbose output
Michael Beck [Wed, 20 Feb 2008 17:02:26 +0000 (17:02 +0000)]
removed verbose output

[r17815]