libfirm
18 years agotrivial one that fails in the current version
Michael Beck [Fri, 31 Mar 2006 11:48:51 +0000 (11:48 +0000)]
trivial one that fails in the current version

18 years agoadded src and tgt mode attributes for conversions
Christian Würdig [Fri, 31 Mar 2006 11:09:54 +0000 (11:09 +0000)]
added src and tgt mode attributes for conversions

18 years agoused arch_get_irn_reg_class() to save 4 lines
Michael Beck [Fri, 31 Mar 2006 10:52:16 +0000 (10:52 +0000)]
used arch_get_irn_reg_class() to save 4 lines

fixed the assert and put the whole assert code into #ifdef NDEBUG

18 years agoadded additional files
Christian Würdig [Fri, 31 Mar 2006 10:26:34 +0000 (10:26 +0000)]
added additional files

18 years agoadded include for harness.c
Christian Würdig [Fri, 31 Mar 2006 10:25:51 +0000 (10:25 +0000)]
added include for harness.c

18 years agoadded another test file
Christian Würdig [Fri, 31 Mar 2006 10:23:42 +0000 (10:23 +0000)]
added another test file

18 years agofixed peephole optimization for IncSP nodes
Michael Beck [Fri, 31 Mar 2006 07:14:33 +0000 (07:14 +0000)]
fixed peephole optimization for IncSP nodes

18 years agomore comments added
Michael Beck [Fri, 31 Mar 2006 07:08:20 +0000 (07:08 +0000)]
more comments added

18 years agoFixed construction of spill-slots and frame type. Aligment was not taken into account...
Michael Beck [Fri, 31 Mar 2006 07:07:29 +0000 (07:07 +0000)]
Fixed construction of spill-slots and frame type. Aligment was not taken into account (alignment might be bigger than size!)

18 years agoused irtools' firm_clear_link instead of local one
Michael Beck [Fri, 31 Mar 2006 07:05:50 +0000 (07:05 +0000)]
used irtools' firm_clear_link instead of local one
be_get_empty() checks now that the set is really empty :-)
some comments added

18 years agotypos fixed
Michael Beck [Fri, 31 Mar 2006 07:04:13 +0000 (07:04 +0000)]
typos fixed
FIRM_DBG_REGISTER() with decl must been the last decl
removed asserts that the empty set is empty. This is now checked in be_get_empty()

18 years agomore comments added
Michael Beck [Fri, 31 Mar 2006 07:01:05 +0000 (07:01 +0000)]
more comments added

18 years agoBugFix:
Michael Beck [Fri, 31 Mar 2006 07:00:11 +0000 (07:00 +0000)]
BugFix:
be_node_classify() should classify be_Return as a branch. This might be useless
as be_Return consume all register and should be last anyway, but it happen that
keep'ed nodes otherwise are scheduled after Return ...

be_get_IncSP_pred() added

more docu added

18 years agofixed fxch emitter
Michael Beck [Thu, 30 Mar 2006 17:32:59 +0000 (17:32 +0000)]
fixed fxch emitter

18 years agopreliminary peephole optimizer for IncSP added
Michael Beck [Thu, 30 Mar 2006 17:32:34 +0000 (17:32 +0000)]
preliminary peephole optimizer for IncSP added

18 years agorestructured to allow peephole optimization of IncSP
Michael Beck [Thu, 30 Mar 2006 17:31:54 +0000 (17:31 +0000)]
restructured to allow peephole optimization of IncSP
fixed Spill/Reload again

18 years agoused new be_set_spill_env_dbg_module()
Michael Beck [Thu, 30 Mar 2006 17:29:25 +0000 (17:29 +0000)]
used new be_set_spill_env_dbg_module()

18 years agoadded be_set_spill_env_dbg_module() to access anonymous structure
Michael Beck [Thu, 30 Mar 2006 17:28:54 +0000 (17:28 +0000)]
added be_set_spill_env_dbg_module() to access anonymous structure

18 years agoreordered if for faster execution
Michael Beck [Thu, 30 Mar 2006 17:28:09 +0000 (17:28 +0000)]
reordered if for faster execution
added additional info in dump

18 years agoAdd get_reg_class_alignment() implementation
Michael Beck [Thu, 30 Mar 2006 15:51:51 +0000 (15:51 +0000)]
Add get_reg_class_alignment() implementation

18 years agoFixed spill slot calculation: use largest mode for a register class and the class...
Michael Beck [Thu, 30 Mar 2006 15:49:27 +0000 (15:49 +0000)]
Fixed spill slot calculation: use largest mode for a register class and the class alignent
to calculate the spill slot size and alignment

18 years agoarch_isa_if_t: get_reg_class_alignment() to retrieve the alignment for spill added
Michael Beck [Thu, 30 Mar 2006 15:41:47 +0000 (15:41 +0000)]
arch_isa_if_t: get_reg_class_alignment() to retrieve the alignment for spill added
arch_register_class_mode() added to retrieve the largest register mode

18 years agowrapped debugging modules with DEBUG_ONLY
Christian Würdig [Thu, 30 Mar 2006 15:39:41 +0000 (15:39 +0000)]
wrapped debugging modules with DEBUG_ONLY

18 years agofixed indents
Christian Würdig [Thu, 30 Mar 2006 13:44:13 +0000 (13:44 +0000)]
fixed indents
switched to trivial selector

18 years agofixed debugging
Christian Würdig [Thu, 30 Mar 2006 13:43:30 +0000 (13:43 +0000)]
fixed debugging

18 years agomade code C89 compliant
Christian Würdig [Thu, 30 Mar 2006 12:53:31 +0000 (12:53 +0000)]
made code C89  compliant
removed some unused variables
added default cases for switch
code cleanup

18 years agofixed comment
Christian Würdig [Thu, 30 Mar 2006 12:35:56 +0000 (12:35 +0000)]
fixed comment

18 years agoadded missing source file
Christian Würdig [Thu, 30 Mar 2006 12:33:20 +0000 (12:33 +0000)]
added missing source file

18 years agoremoved explicit set of debug mask
Christian Würdig [Thu, 30 Mar 2006 12:22:55 +0000 (12:22 +0000)]
removed explicit set of debug mask

18 years agoremoved explicit set for debug mask
Christian Würdig [Thu, 30 Mar 2006 12:17:43 +0000 (12:17 +0000)]
removed explicit set for debug mask

18 years agoremoved define
Christian Würdig [Thu, 30 Mar 2006 12:08:56 +0000 (12:08 +0000)]
removed define

18 years agoadded mssing source files
Christian Würdig [Thu, 30 Mar 2006 11:36:33 +0000 (11:36 +0000)]
added mssing source files

18 years agomade code C89 compliant
Christian Würdig [Thu, 30 Mar 2006 11:33:09 +0000 (11:33 +0000)]
made code C89 compliant
removed some unused variables
code cleanup

18 years agomade code C89 compliant
Christian Würdig [Thu, 30 Mar 2006 10:49:56 +0000 (10:49 +0000)]
made code C89 compliant
removes some unused variables and functions
code cleanup

18 years agomade code C89 compliant (changed unnamed union in attributes)
Christian Würdig [Thu, 30 Mar 2006 09:10:01 +0000 (09:10 +0000)]
made code C89 compliant (changed unnamed union in attributes)
added default cases for switch
removed some unused variables
code cleanup

18 years agoremoved some unused variables
Christian Würdig [Thu, 30 Mar 2006 08:06:36 +0000 (08:06 +0000)]
removed some unused variables
code cleanup
deactivated deadnode elimination

18 years agomore x87 emitters updated
Michael Beck [Thu, 30 Mar 2006 07:10:06 +0000 (07:10 +0000)]
more x87 emitters updated

18 years agohandle be_Call
Michael Beck [Thu, 30 Mar 2006 07:09:05 +0000 (07:09 +0000)]
handle be_Call

18 years agofixed get_ia32_reg_name() and ia32_get_ia32_reg_name() to handle x87 register names
Michael Beck [Thu, 30 Mar 2006 07:06:50 +0000 (07:06 +0000)]
fixed get_ia32_reg_name() and ia32_get_ia32_reg_name() to handle x87 register names
and the stupid % in front of the names ...

18 years agofixed transform_to_Load() and *_to_Store()
Michael Beck [Thu, 30 Mar 2006 07:03:56 +0000 (07:03 +0000)]
fixed transform_to_Load() and *_to_Store()

18 years agosome comments added
Michael Beck [Thu, 30 Mar 2006 07:02:25 +0000 (07:02 +0000)]
some comments added
some minor code changes
add call type to be_Call nodes

18 years agobe_Call has now dbg_info argument and call type attribute
Michael Beck [Thu, 30 Mar 2006 07:00:26 +0000 (07:00 +0000)]
be_Call has now dbg_info argument and call type attribute
some comments added

18 years agobe_Call has now dbg_info argument and call type attribute
Michael Beck [Thu, 30 Mar 2006 06:59:57 +0000 (06:59 +0000)]
be_Call has now dbg_info argument and call type attribute
fixed memory leak
some comments added

18 years agoremoved some unused variables and functions
Christian Würdig [Wed, 29 Mar 2006 19:30:29 +0000 (19:30 +0000)]
removed some unused variables and functions

18 years agoremoved FIRMBE_ARCH
Christian Würdig [Wed, 29 Mar 2006 19:30:13 +0000 (19:30 +0000)]
removed FIRMBE_ARCH

18 years agodebug output updated
Michael Beck [Wed, 29 Mar 2006 16:42:06 +0000 (16:42 +0000)]
debug output updated

18 years agofixed emitters for most nodes
Michael Beck [Wed, 29 Mar 2006 16:41:33 +0000 (16:41 +0000)]
fixed emitters for most nodes

18 years agoadded R flag to mark real x87 instructions
Michael Beck [Wed, 29 Mar 2006 16:28:33 +0000 (16:28 +0000)]
added R flag to mark real x87 instructions

18 years agoadded declaration for ia32_emit_x87_binop()
Michael Beck [Wed, 29 Mar 2006 16:21:53 +0000 (16:21 +0000)]
added declaration for ia32_emit_x87_binop()

18 years agoBugFix: is_ia32_Ld() and is_ia32_St() must handle real x87 nodes because
Michael Beck [Wed, 29 Mar 2006 16:21:29 +0000 (16:21 +0000)]
BugFix: is_ia32_Ld() and is_ia32_St() must handle real x87 nodes because
they get interrogated for register constraints

18 years agoadded Makefile for make environment
Christian Würdig [Wed, 29 Mar 2006 16:21:14 +0000 (16:21 +0000)]
added Makefile for make environment

18 years agoadded Makefile for make environment
Christian Würdig [Wed, 29 Mar 2006 16:20:44 +0000 (16:20 +0000)]
added Makefile for make environment

18 years agoimplemented ia32_emit_x87_binop()
Michael Beck [Wed, 29 Mar 2006 16:20:13 +0000 (16:20 +0000)]
implemented ia32_emit_x87_binop()
used flag to find x87 register in ia32 attributes
BugFix: fixed Copy for SSE

18 years agoBugFix: create ProjM after Store
Michael Beck [Wed, 29 Mar 2006 16:18:43 +0000 (16:18 +0000)]
BugFix: create ProjM after Store

18 years agoadded WITH_ILP switch
Christian Würdig [Wed, 29 Mar 2006 14:07:13 +0000 (14:07 +0000)]
added WITH_ILP switch

18 years agoadded obstack_printf extern declaration
Christian Würdig [Wed, 29 Mar 2006 08:55:49 +0000 (08:55 +0000)]
added obstack_printf extern declaration

18 years agoadded cvsignore file
Christian Würdig [Wed, 29 Mar 2006 08:52:19 +0000 (08:52 +0000)]
added cvsignore file

18 years agoremoved old unused files
Christian Würdig [Wed, 29 Mar 2006 08:06:27 +0000 (08:06 +0000)]
removed old unused files

18 years agoadded debugging support, implemented shuffle (Perm for x87 :-)
Michael Beck [Tue, 28 Mar 2006 17:13:13 +0000 (17:13 +0000)]
added debugging support, implemented shuffle (Perm for x87 :-)

18 years agoset the used_x87 flag when a virtual x87 instruction is emitted
Michael Beck [Tue, 28 Mar 2006 17:12:23 +0000 (17:12 +0000)]
set the used_x87 flag when a virtual x87 instruction is emitted

18 years agoremoved useless virtual instructions nd freed vf7 which can be used
Michael Beck [Tue, 28 Mar 2006 17:10:50 +0000 (17:10 +0000)]
removed useless virtual instructions nd freed vf7 which can be used

18 years agoadded used_x87 flag, so the x87 simulator runs only if fp
Michael Beck [Tue, 28 Mar 2006 17:10:14 +0000 (17:10 +0000)]
added used_x87 flag, so the x87 simulator runs only if fp
code was emitted

18 years agofixed symconsts in address mode
Christian Würdig [Tue, 28 Mar 2006 14:59:40 +0000 (14:59 +0000)]
fixed symconsts in address mode

18 years agoused new FIRM_DBG_REGISTER macro
Michael Beck [Tue, 28 Mar 2006 13:01:44 +0000 (13:01 +0000)]
used new FIRM_DBG_REGISTER macro

18 years agofixed spill lowering
Christian Würdig [Tue, 28 Mar 2006 12:59:53 +0000 (12:59 +0000)]
fixed spill lowering
fixed cmp with immediate
emit %cl for shift/rotate ops
fixed some minor bugs

18 years agoused new FIRM_DBG_REGISTER macro
Michael Beck [Tue, 28 Mar 2006 12:29:27 +0000 (12:29 +0000)]
used new FIRM_DBG_REGISTER macro

18 years agoused new FIRM_DBG_REGISTER macro
Michael Beck [Tue, 28 Mar 2006 12:25:17 +0000 (12:25 +0000)]
used new FIRM_DBG_REGISTER macro

18 years agoused new FIRM_DBG_REGISTER macro
Michael Beck [Tue, 28 Mar 2006 12:24:43 +0000 (12:24 +0000)]
used new FIRM_DBG_REGISTER macro

18 years agoused new FIRM_DBG_REGISTER() macro
Michael Beck [Tue, 28 Mar 2006 12:23:54 +0000 (12:23 +0000)]
used new FIRM_DBG_REGISTER() macro

18 years agoused new FIRM_DBG_REGISTER() macro
Michael Beck [Tue, 28 Mar 2006 12:09:50 +0000 (12:09 +0000)]
used new FIRM_DBG_REGISTER() macro

18 years agonon-strict x87 float<->float conversion support
Michael Beck [Tue, 28 Mar 2006 02:53:32 +0000 (02:53 +0000)]
non-strict x87 float<->float conversion support

18 years agoimplemented register liveness analysis
Michael Beck [Tue, 28 Mar 2006 02:52:02 +0000 (02:52 +0000)]
implemented register liveness analysis
used liveanalysis to insert push/pop
implemented copy and fst

18 years agoadded x87 opcodes for pop operations and load/store integer
Michael Beck [Tue, 28 Mar 2006 02:50:38 +0000 (02:50 +0000)]
added x87 opcodes for pop operations and load/store integer

18 years agofixed warning
Michael Beck [Tue, 28 Mar 2006 02:49:24 +0000 (02:49 +0000)]
fixed warning

18 years agobe_Return constructor now takes a debug info
Michael Beck [Tue, 28 Mar 2006 02:48:00 +0000 (02:48 +0000)]
be_Return constructor now takes a debug info

18 years agoadd some comments
Michael Beck [Tue, 28 Mar 2006 02:47:14 +0000 (02:47 +0000)]
add some comments

18 years agoFixed memory leak
Michael Beck [Tue, 28 Mar 2006 02:46:09 +0000 (02:46 +0000)]
Fixed memory leak

18 years agoadded mips backend from the backend praktikum
Michael Beck [Mon, 27 Mar 2006 16:08:13 +0000 (16:08 +0000)]
added mips backend from the backend praktikum

18 years agoPPC32 backend from the backend praktikum
Michael Beck [Mon, 27 Mar 2006 15:43:36 +0000 (15:43 +0000)]
PPC32 backend from the backend praktikum

18 years agoadded 8Bit Store work around
Christian Würdig [Mon, 27 Mar 2006 15:13:01 +0000 (15:13 +0000)]
added 8Bit Store work around
fixed several bugs

18 years agoremoved unused constructors
Christian Würdig [Mon, 27 Mar 2006 15:12:20 +0000 (15:12 +0000)]
removed unused constructors

18 years agoadded support for x87 fp unit
Michael Beck [Mon, 27 Mar 2006 13:23:32 +0000 (13:23 +0000)]
added support for x87 fp unit

18 years agoadd support for x87 fp unit
Michael Beck [Mon, 27 Mar 2006 13:14:40 +0000 (13:14 +0000)]
add support for x87 fp unit

18 years agoadd support for x87 fp unit
Michael Beck [Mon, 27 Mar 2006 13:11:59 +0000 (13:11 +0000)]
add support for x87 fp unit

18 years agorenamed fp to xmm registers
Michael Beck [Mon, 27 Mar 2006 13:01:21 +0000 (13:01 +0000)]
renamed fp to xmm registers

18 years agoadded support for x87 fp unit
Michael Beck [Mon, 27 Mar 2006 13:00:41 +0000 (13:00 +0000)]
added support for x87 fp unit

18 years agoadded support for x87 fp unit
Michael Beck [Mon, 27 Mar 2006 13:00:17 +0000 (13:00 +0000)]
added support for x87 fp unit

18 years agoadded new files
Michael Beck [Mon, 27 Mar 2006 12:59:36 +0000 (12:59 +0000)]
added new files

18 years agoinitial version of the x87 stack simulator
Michael Beck [Mon, 27 Mar 2006 12:58:54 +0000 (12:58 +0000)]
initial version of the x87 stack simulator

18 years agoadded support for x87 fp unit
Michael Beck [Mon, 27 Mar 2006 12:58:20 +0000 (12:58 +0000)]
added support for x87 fp unit

18 years agoadded support for x87 fp unit
Michael Beck [Mon, 27 Mar 2006 12:57:40 +0000 (12:57 +0000)]
added support for x87 fp unit

18 years agoadd support for x87 floating point unit.
Michael Beck [Mon, 27 Mar 2006 12:57:08 +0000 (12:57 +0000)]
add support for x87 floating point unit.
call the block scheduler
renamed XXX registers to NO_REG

18 years agoadd virtual floating point and st registers
Michael Beck [Mon, 27 Mar 2006 12:55:11 +0000 (12:55 +0000)]
add virtual floating point and st registers
add most virtual fp and real x87 nodes

18 years agoplace transformed StackParam nodes in the user Block
Christian Würdig [Mon, 27 Mar 2006 12:46:18 +0000 (12:46 +0000)]
place transformed StackParam nodes in the user Block

18 years agofixed variable type bug
Christian Würdig [Mon, 27 Mar 2006 12:45:50 +0000 (12:45 +0000)]
fixed variable type bug

18 years agoadd the X template to access x87 registers
Michael Beck [Mon, 27 Mar 2006 12:38:14 +0000 (12:38 +0000)]
add the X template to access x87 registers

18 years agoAdded arm backend from BE praktikum
Michael Beck [Mon, 27 Mar 2006 11:54:07 +0000 (11:54 +0000)]
Added arm backend from BE praktikum

18 years agomake all emitters static
Michael Beck [Mon, 27 Mar 2006 11:42:17 +0000 (11:42 +0000)]
make all emitters static

18 years agochanged defined constant names for be_stack_dir
Christian Würdig [Mon, 27 Mar 2006 11:30:56 +0000 (11:30 +0000)]
changed defined constant names for be_stack_dir
fixed emit of unary ops
fixed copy generation for should be same constraints

18 years agofixed immediate operation handling
Christian Würdig [Mon, 27 Mar 2006 10:41:47 +0000 (10:41 +0000)]
fixed immediate operation handling