libfirm
17 years agofix firm backend
Matthias Braun [Wed, 28 Mar 2007 10:39:57 +0000 (10:39 +0000)]
fix firm backend

17 years agonew register requirements
Christian Würdig [Tue, 27 Mar 2007 15:17:47 +0000 (15:17 +0000)]
new register requirements

17 years agoadded missing source
Christian Würdig [Tue, 27 Mar 2007 14:48:37 +0000 (14:48 +0000)]
added missing source

17 years agorewritten be_ssa_constr which isn't using sets anymore, started working on a 'state...
Matthias Braun [Mon, 26 Mar 2007 08:49:26 +0000 (08:49 +0000)]
rewritten be_ssa_constr which isn't using sets anymore, started working on a 'state' register type

17 years agowarning fix, documentation improvements
Matthias Braun [Mon, 26 Mar 2007 08:48:15 +0000 (08:48 +0000)]
warning fix, documentation improvements

17 years agouse ir_nodeset in scheduler
Matthias Braun [Mon, 26 Mar 2007 08:47:47 +0000 (08:47 +0000)]
use ir_nodeset in scheduler

17 years agoindentation fix
Matthias Braun [Mon, 26 Mar 2007 08:47:21 +0000 (08:47 +0000)]
indentation fix

17 years agomove dominance frontiers code to own files
Matthias Braun [Mon, 26 Mar 2007 08:46:55 +0000 (08:46 +0000)]
move dominance frontiers code to own files

17 years agoallow explicit setting of phi register requirements
Matthias Braun [Fri, 23 Mar 2007 17:24:34 +0000 (17:24 +0000)]
allow explicit setting of phi register requirements

17 years agoAllow any class when there is no special register requirement
Christian Würdig [Fri, 23 Mar 2007 17:13:27 +0000 (17:13 +0000)]
Allow any class when there is no special register requirement

17 years agoswitch on firm optimizations when creating spill nodes
Christian Würdig [Fri, 23 Mar 2007 16:19:27 +0000 (16:19 +0000)]
switch on firm optimizations when creating spill nodes

17 years agodisable experimental code for now
Matthias Braun [Fri, 23 Mar 2007 14:49:22 +0000 (14:49 +0000)]
disable experimental code for now

17 years agonew declaration for state register type
Matthias Braun [Fri, 23 Mar 2007 13:44:12 +0000 (13:44 +0000)]
new declaration for state register type

17 years agosieve is not needed anymore
Matthias Braun [Thu, 22 Mar 2007 15:03:49 +0000 (15:03 +0000)]
sieve is not needed anymore

17 years agonew register type
Matthias Braun [Thu, 22 Mar 2007 15:02:44 +0000 (15:02 +0000)]
new register type

17 years agofix wrong lea to add transformation
Matthias Braun [Thu, 22 Mar 2007 15:02:22 +0000 (15:02 +0000)]
fix wrong lea to add transformation

17 years agomake CondJmps and Switches pinned, now we can do code_placement in the backend again
Matthias Braun [Thu, 22 Mar 2007 14:01:55 +0000 (14:01 +0000)]
make CondJmps and Switches pinned, now we can do code_placement in the backend again

17 years agoReplace leading spaces by tabs
Matthias Braun [Thu, 22 Mar 2007 13:42:16 +0000 (13:42 +0000)]
Replace leading spaces by tabs

17 years agoremove superfluous quotation marks
Matthias Braun [Thu, 22 Mar 2007 13:37:44 +0000 (13:37 +0000)]
remove superfluous quotation marks

17 years agoResolved conflicts
Andreas Schösser [Thu, 22 Mar 2007 13:35:08 +0000 (13:35 +0000)]
Resolved conflicts

17 years agoa bunch of fixes to make firm work with NDEBUG and without DEBUG_libfirm
Matthias Braun [Thu, 22 Mar 2007 10:39:48 +0000 (10:39 +0000)]
a bunch of fixes to make firm work with NDEBUG and without DEBUG_libfirm

17 years agoFixed Makefiles
Christoph Mallon [Wed, 21 Mar 2007 17:56:12 +0000 (17:56 +0000)]
Fixed Makefiles

17 years agoCorrected wrong path name when calling ia32_simd_spec.pl
Andreas Schösser [Tue, 20 Mar 2007 12:43:58 +0000 (12:43 +0000)]
Corrected wrong path name when calling ia32_simd_spec.pl

17 years agomake the mips backend do some half-usefull things again
Matthias Braun [Tue, 20 Mar 2007 10:23:45 +0000 (10:23 +0000)]
make the mips backend do some half-usefull things again

17 years agoreindent 2 lines...
Matthias Braun [Tue, 20 Mar 2007 10:23:19 +0000 (10:23 +0000)]
reindent 2 lines...

17 years agoadded cvsignore
Matthias Braun [Tue, 20 Mar 2007 10:18:42 +0000 (10:18 +0000)]
added cvsignore

17 years agoThe big committ:
Matthias Braun [Mon, 19 Mar 2007 17:05:21 +0000 (17:05 +0000)]
The big committ:
- Replace limit callback in register requirements with a simple bitset
- Fix backends, generators and the rest of the code for the change register
  requirements structure
- Eliminated the custom register_requirement structures in the backend, they
  are pointless now, use the normal arch_register_req_t
- Fix TEMPLATE backend
- Extract emitter framework from ia32 and provide generic header/code for it
- Port TEMPLATE backend to new emitter
- Extract gas specific emit stuff (declarations, sections) from ia32 backend
  and provide it as generic header/code. Make TEMPLATE backend use that
- Remove several FIRM_DBG_REGISTERs from functions which are called very often.
  Before we had millions of string hashtable lookups because of that. The
  prefered way is to have 1 static debug module per file and initialize it in
  the module constructor. No passing around in environment structs and in no
  case should you dynamically register it in single functions.

17 years agoremoved unused variable
Christian Würdig [Sun, 18 Mar 2007 17:35:17 +0000 (17:35 +0000)]
removed unused variable

17 years agofixed precedence constraint
Christian Würdig [Sun, 18 Mar 2007 17:33:20 +0000 (17:33 +0000)]
fixed precedence constraint

17 years agoadded more statistics
Christian Würdig [Fri, 16 Mar 2007 14:26:48 +0000 (14:26 +0000)]
added more statistics

17 years agoadded sieve
Christian Würdig [Fri, 16 Mar 2007 12:38:51 +0000 (12:38 +0000)]
added sieve

17 years agoadded missing include
Christian Würdig [Fri, 16 Mar 2007 09:47:18 +0000 (09:47 +0000)]
added missing include

17 years agoadded some statistics
Christian Würdig [Thu, 15 Mar 2007 17:29:37 +0000 (17:29 +0000)]
added some statistics

17 years agofallback to list scheduler when ILP fails
Christian Würdig [Thu, 15 Mar 2007 14:48:07 +0000 (14:48 +0000)]
fallback to list scheduler when ILP fails

17 years agoadded function to schedule single block (needed as ILP fallback)
Christian Würdig [Thu, 15 Mar 2007 14:47:17 +0000 (14:47 +0000)]
added function to schedule single block (needed as ILP fallback)

17 years agopass be options to ILP scheduler
Christian Würdig [Thu, 15 Mar 2007 14:46:48 +0000 (14:46 +0000)]
pass be options to ILP scheduler

17 years agocleaned up the vadd_store test
Matthias Braun [Thu, 15 Mar 2007 14:36:30 +0000 (14:36 +0000)]
cleaned up the vadd_store test

17 years agovector test
Andreas Schösser [Thu, 15 Mar 2007 14:18:31 +0000 (14:18 +0000)]
vector test

17 years agoremoved dead node constraint
Christian Würdig [Thu, 15 Mar 2007 10:14:19 +0000 (10:14 +0000)]
removed dead node constraint

17 years agofixed statistic envents for backend provided spiller
Christian Würdig [Thu, 15 Mar 2007 09:18:48 +0000 (09:18 +0000)]
fixed statistic envents for backend provided spiller

17 years agoremoved some unused variables
Christian Würdig [Wed, 14 Mar 2007 18:13:45 +0000 (18:13 +0000)]
removed some unused variables
changed fprintf into DBG

17 years agoadded branch handling (schedule branches always last)
Christian Würdig [Wed, 14 Mar 2007 12:25:08 +0000 (12:25 +0000)]
added branch handling (schedule branches always last)

17 years agoadded support of live-in variables
Christian Würdig [Tue, 13 Mar 2007 16:39:04 +0000 (16:39 +0000)]
added support of live-in variables

17 years agoadded comments
Christian Würdig [Tue, 13 Mar 2007 16:38:48 +0000 (16:38 +0000)]
added comments
fixed indent

17 years agofixed comment
Christian Würdig [Tue, 13 Mar 2007 16:38:25 +0000 (16:38 +0000)]
fixed comment
fixed options initializer
removed unused code

17 years agofixed indent
Christian Würdig [Tue, 13 Mar 2007 16:37:53 +0000 (16:37 +0000)]
fixed indent

17 years agoChanged mode_DLu to mode_LLu
Andreas Schösser [Mon, 12 Mar 2007 12:12:07 +0000 (12:12 +0000)]
Changed mode_DLu to mode_LLu

17 years agoAdded code to run some initialization routines only once, even if they were called...
Andreas Schösser [Fri, 9 Mar 2007 11:16:56 +0000 (11:16 +0000)]
Added code to run some initialization routines only once, even if they were called several times.

17 years agoAdded code to run init_modules only once even if it is called several times.
Andreas Schösser [Fri, 9 Mar 2007 11:15:13 +0000 (11:15 +0000)]
Added code to run init_modules only once even if it is called several times.

17 years agoAdded possibility to include automatically generated simd nodes specification. Also...
Andreas Schösser [Fri, 9 Mar 2007 11:06:01 +0000 (11:06 +0000)]
Added possibility to include automatically generated simd nodes specification. Also Added code to Spill and Reload sse registers. SSE registers have mode_DLu now, which represents a 128 bit unsigned value.

17 years agoExtend bitfield test
Christoph Mallon [Wed, 7 Mar 2007 15:43:05 +0000 (15:43 +0000)]
Extend bitfield test

17 years ago- No #ifdef WITH_LIBCORE anymore in backend, compilation without libcore was broken...
Matthias Braun [Fri, 2 Mar 2007 15:34:02 +0000 (15:34 +0000)]
- No #ifdef WITH_LIBCORE anymore in backend, compilation without libcore was broken anyway so we always require it now
- changed some #include "config.h" to the recommended #include <config.h>

17 years agodon't throw away memory input when transforming Frees in beabi
Matthias Braun [Fri, 2 Mar 2007 14:17:36 +0000 (14:17 +0000)]
don't throw away memory input when transforming Frees in beabi

17 years agochanged vararray.c to demonstrate another bug
Matthias Braun [Fri, 2 Mar 2007 14:00:52 +0000 (14:00 +0000)]
changed vararray.c to demonstrate another bug

17 years agofix output of static variables after .comm change
Matthias Braun [Thu, 1 Mar 2007 22:23:45 +0000 (22:23 +0000)]
fix output of static variables after .comm change

17 years agofix dumping of thread local storage which was broken after the .comm change
Matthias Braun [Thu, 1 Mar 2007 21:41:16 +0000 (21:41 +0000)]
fix dumping of thread local storage which was broken after the .comm change

17 years agocorrectly handle calls in x87 simulator
Matthias Braun [Thu, 1 Mar 2007 21:35:01 +0000 (21:35 +0000)]
correctly handle calls in x87 simulator

17 years agotest float calls whose return is unused
Matthias Braun [Thu, 1 Mar 2007 21:17:13 +0000 (21:17 +0000)]
test float calls whose return is unused

17 years agotest float calls whose return is unused
Matthias Braun [Thu, 1 Mar 2007 21:16:53 +0000 (21:16 +0000)]
test float calls whose return is unused

17 years agoremove obsolete fldConst node
Matthias Braun [Thu, 1 Mar 2007 21:08:27 +0000 (21:08 +0000)]
remove obsolete fldConst node

17 years agoremove old debug printf
Matthias Braun [Thu, 1 Mar 2007 21:07:57 +0000 (21:07 +0000)]
remove old debug printf

17 years ago- we have to handle copies from Unknown nodes
Matthias Braun [Thu, 1 Mar 2007 21:07:15 +0000 (21:07 +0000)]
- we have to handle copies from Unknown nodes
- Precalculate liveness info again

17 years ago- removed C99 features
Michael Beck [Thu, 1 Mar 2007 17:22:00 +0000 (17:22 +0000)]
- removed C99 features
- typo fixed

17 years ago- just to announce my last committ :) Make Barrier, RegParams and keep nodes
Matthias Braun [Thu, 1 Mar 2007 13:56:28 +0000 (13:56 +0000)]
- just to announce my last committ :) Make Barrier, RegParams and keep nodes
  dynamically extensible

17 years ago- make spillslot coalescer pickup float-int convert loads which are folded
Matthias Braun [Thu, 1 Mar 2007 13:55:02 +0000 (13:55 +0000)]
- make spillslot coalescer pickup float-int convert loads which are folded
  into other nodes
- correctly fix Copies in x87 simulator

17 years agofix mixed reverse/normal comp in fCondJmp
Matthias Braun [Thu, 1 Mar 2007 12:40:51 +0000 (12:40 +0000)]
fix mixed reverse/normal comp in fCondJmp

17 years ago- fix x87 simulator not killing float copies that only move registers around,
Matthias Braun [Thu, 1 Mar 2007 12:13:55 +0000 (12:13 +0000)]
- fix x87 simulator not killing float copies that only move registers around,
 when the operand is a constant
- workaround gas bugs which swaps fsubp,subrp, fdivp, fdivrp

17 years agoadd some more stuff to optest
Matthias Braun [Thu, 1 Mar 2007 12:12:45 +0000 (12:12 +0000)]
add some more stuff to optest

17 years agoSSE consts for xorps need to be 128bit
Matthias Braun [Tue, 27 Feb 2007 16:59:50 +0000 (16:59 +0000)]
SSE consts for xorps need to be 128bit

17 years agofix some ia32_finish routines not setting ls_mode for xmm nodes
Matthias Braun [Tue, 27 Feb 2007 15:47:56 +0000 (15:47 +0000)]
fix some ia32_finish routines not setting ls_mode for xmm nodes

17 years agofix cvt emitter
Matthias Braun [Tue, 27 Feb 2007 15:32:28 +0000 (15:32 +0000)]
fix cvt emitter

17 years agoGetST0 and xLoad also need entities
Matthias Braun [Tue, 27 Feb 2007 15:25:29 +0000 (15:25 +0000)]
GetST0 and xLoad also need entities

17 years agofix SSE2 float calls + returns
Matthias Braun [Tue, 27 Feb 2007 15:23:35 +0000 (15:23 +0000)]
fix SSE2 float calls + returns

17 years agofix SSE2 float calls + returns
Matthias Braun [Tue, 27 Feb 2007 15:23:31 +0000 (15:23 +0000)]
fix SSE2 float calls + returns

17 years agoimproved optest testapp to test more cases, added an optest_float testapp
Matthias Braun [Tue, 27 Feb 2007 11:14:56 +0000 (11:14 +0000)]
improved optest testapp to test more cases, added an optest_float testapp

17 years agodon't output .global for .comm variables
Matthias Braun [Tue, 27 Feb 2007 11:12:56 +0000 (11:12 +0000)]
don't output .global for .comm variables

17 years agofix Mulh, Div, IDiv handling
Matthias Braun [Tue, 27 Feb 2007 11:10:57 +0000 (11:10 +0000)]
fix Mulh, Div, IDiv handling

17 years agoleave result mode of calls untouched
Matthias Braun [Tue, 27 Feb 2007 11:08:02 +0000 (11:08 +0000)]
leave result mode of calls untouched

17 years agoset mode of result Proj to result mode of function
Christian Würdig [Mon, 26 Feb 2007 17:37:59 +0000 (17:37 +0000)]
set mode of result Proj to result mode of function

17 years agooutput unitialized data with .comm
Matthias Braun [Mon, 26 Feb 2007 13:30:53 +0000 (13:30 +0000)]
output unitialized data with .comm

17 years agoremoved dependency on chordal_env
Christian Würdig [Fri, 23 Feb 2007 17:47:02 +0000 (17:47 +0000)]
removed dependency on chordal_env
removed unused code

17 years agofixed wrong assert
Christian Würdig [Fri, 23 Feb 2007 17:46:31 +0000 (17:46 +0000)]
fixed wrong assert

17 years agodo not free irg, STA needs it later on
Christian Würdig [Fri, 23 Feb 2007 17:46:13 +0000 (17:46 +0000)]
do not free irg, STA needs it later on
removed unused code

17 years agoremoved unused code
Christian Würdig [Fri, 23 Feb 2007 17:45:41 +0000 (17:45 +0000)]
removed unused code
removed redundant irg-dump

17 years agoremoved C99 style
Christian Würdig [Fri, 23 Feb 2007 17:45:15 +0000 (17:45 +0000)]
removed C99 style

17 years agouse ARR_LEN and don't save length of registers separate for benodes
Matthias Braun [Fri, 23 Feb 2007 16:25:23 +0000 (16:25 +0000)]
use ARR_LEN and don't save length of registers separate for benodes

17 years agothe delayed nodes are also counted in register pressure, subtract them form there
Matthias Braun [Fri, 23 Feb 2007 10:18:49 +0000 (10:18 +0000)]
the delayed nodes are also counted in register pressure, subtract them form there

17 years agoBugFix: allocate size for the structure, not for the pointer
Michael Beck [Thu, 22 Feb 2007 16:59:14 +0000 (16:59 +0000)]
BugFix: allocate size for the structure, not for the pointer

17 years ago- force liveness update in belady spiller, (someone doesn't seem to use
Matthias Braun [Thu, 22 Feb 2007 13:43:02 +0000 (13:43 +0000)]
- force liveness update in belady spiller, (someone doesn't seem to use
update/invalidate correctly...)
- fixed NoReg/Unknown creation

17 years agoreverting something I didn't want to committ yet
Matthias Braun [Thu, 22 Feb 2007 13:25:14 +0000 (13:25 +0000)]
reverting something I didn't want to committ yet

17 years agoaddes a comment around code that should be removed
Matthias Braun [Thu, 22 Feb 2007 13:22:44 +0000 (13:22 +0000)]
addes a comment around code that should be removed

17 years ago- change float nodes to mode_E
Matthias Braun [Thu, 22 Feb 2007 13:21:22 +0000 (13:21 +0000)]
- change float nodes to mode_E
- correctly capture spills and reloads in coalescer code

17 years agomore verification of the final graph, always kill nodes in be_remove_dead_nodes_from_...
Matthias Braun [Thu, 22 Feb 2007 13:18:39 +0000 (13:18 +0000)]
more verification of the final graph, always kill nodes in be_remove_dead_nodes_from_schedule

17 years agodisabled a verify warning which wasn't always correct
Matthias Braun [Thu, 22 Feb 2007 13:17:00 +0000 (13:17 +0000)]
disabled a verify warning which wasn't always correct

17 years agomake code a little bit nicer, don't create copies for joker registers in constraint...
Matthias Braun [Thu, 22 Feb 2007 13:14:07 +0000 (13:14 +0000)]
make code a little bit nicer, don't create copies for joker registers in constraint handling code

17 years agofixed out-flags parsing
Christian Würdig [Thu, 22 Feb 2007 11:03:54 +0000 (11:03 +0000)]
fixed out-flags parsing

17 years agofixed indenting and some comments
Christian Würdig [Thu, 22 Feb 2007 10:20:54 +0000 (10:20 +0000)]
fixed indenting and some comments

17 years agocheck register pressure in loops for variables, selected for spilling due to loop...
Christian Würdig [Wed, 21 Feb 2007 17:18:42 +0000 (17:18 +0000)]
check register pressure in loops for variables, selected for spilling due to loop structure

17 years agoadded USES_PENDING
Christian Würdig [Wed, 21 Feb 2007 17:01:12 +0000 (17:01 +0000)]
added USES_PENDING

17 years agoBugFix: set insert and find was broken
Christian Würdig [Wed, 21 Feb 2007 17:00:44 +0000 (17:00 +0000)]
BugFix: set insert and find was broken