libfirm
18 years agoplaced register_options() last in the interface
Michael Beck [Sun, 2 Apr 2006 11:12:21 +0000 (11:12 +0000)]
placed register_options() last in the interface

18 years agoinclude "obst.h" instead of hand generated code
Michael Beck [Sun, 2 Apr 2006 11:10:24 +0000 (11:10 +0000)]
include "obst.h" instead of hand generated code

18 years agocreate enum for all architecture specific opcodes
Michael Beck [Sun, 2 Apr 2006 11:08:19 +0000 (11:08 +0000)]
create enum for all architecture specific opcodes
removed two extra opcode number at start end end
generates get_<arch>_irn_opcode()
generates #ifdefs's around header file
calls <arch>_register_additional_opcodes only if $additional_opcodes is set

18 years agofixed Jump Tables
Christian Würdig [Fri, 31 Mar 2006 20:19:11 +0000 (20:19 +0000)]
fixed Jump Tables

18 years agoremoved wrong instructions with traps on overflow
Michael Beck [Fri, 31 Mar 2006 17:47:22 +0000 (17:47 +0000)]
removed wrong instructions with traps on overflow

18 years agoremoved IncSP schedule before me work-around (did not work ;-)
Michael Beck [Fri, 31 Mar 2006 17:46:18 +0000 (17:46 +0000)]
removed IncSP schedule before me work-around (did not work ;-)

18 years agoadd ia32 command line handler for fp-unit and architecture
Michael Beck [Fri, 31 Mar 2006 17:45:11 +0000 (17:45 +0000)]
add ia32 command line handler for fp-unit and architecture

18 years agoextended test file
Christian Würdig [Fri, 31 Mar 2006 16:56:10 +0000 (16:56 +0000)]
extended test file

18 years agoadded silence emitter for Projs and Phis
Christian Würdig [Fri, 31 Mar 2006 16:55:46 +0000 (16:55 +0000)]
added silence emitter for Projs and Phis

18 years agochanged SwitchJmp emitter (but still broken in some cases)
Christian Würdig [Fri, 31 Mar 2006 16:55:26 +0000 (16:55 +0000)]
changed SwitchJmp emitter (but still broken in some cases)

18 years agofixed addressmode
Christian Würdig [Fri, 31 Mar 2006 16:55:03 +0000 (16:55 +0000)]
fixed addressmode

18 years agoadd functions for command line handling
Michael Beck [Fri, 31 Mar 2006 15:41:31 +0000 (15:41 +0000)]
add functions for command line handling
more comments added

18 years agoFixed docu
Michael Beck [Fri, 31 Mar 2006 15:39:07 +0000 (15:39 +0000)]
Fixed docu

18 years agofixed addressmode bug
Christian Würdig [Fri, 31 Mar 2006 15:34:40 +0000 (15:34 +0000)]
fixed addressmode bug
fixed copy inserter bug
changed debugging stuff

18 years agofixed copy inserter
Christian Würdig [Fri, 31 Mar 2006 13:05:53 +0000 (13:05 +0000)]
fixed copy inserter
omit copy if in==out

18 years agoadded functions to get copy op
Christian Würdig [Fri, 31 Mar 2006 13:05:09 +0000 (13:05 +0000)]
added functions to get copy op

18 years agoremoved ;
Christian Würdig [Fri, 31 Mar 2006 13:04:52 +0000 (13:04 +0000)]
removed ;

18 years agoactivated assure constraints
Christian Würdig [Fri, 31 Mar 2006 13:04:18 +0000 (13:04 +0000)]
activated assure constraints

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