libfirm
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

18 years agoadded sched_create_block_schedule() to create a simple extended block based block...
Michael Beck [Sun, 26 Mar 2006 14:15:37 +0000 (14:15 +0000)]
added sched_create_block_schedule() to create a simple extended block based block schedule

18 years agoSet the new irop_flag_machine flag for all generated opcodes
Michael Beck [Sun, 26 Mar 2006 14:13:59 +0000 (14:13 +0000)]
Set the new irop_flag_machine flag for all generated opcodes

18 years agomake the names of the be_stack_dir_t more understandable
Michael Beck [Sat, 25 Mar 2006 11:17:15 +0000 (11:17 +0000)]
make the names of the be_stack_dir_t more understandable

18 years agomake the names of the be_stack_dir_t more understandable
Michael Beck [Sat, 25 Mar 2006 11:15:46 +0000 (11:15 +0000)]
make the names of the be_stack_dir_t more understandable

18 years agomake the names of the be_stack_dir_t more understandable
Michael Beck [Sat, 25 Mar 2006 11:14:49 +0000 (11:14 +0000)]
make the names of the be_stack_dir_t more understandable
add a TODO: Alloc nodes might have no USER (and them we can kill them). NIY

18 years agomake the names of the be_stack_dir_t more understandable
Michael Beck [Sat, 25 Mar 2006 11:11:58 +0000 (11:11 +0000)]
make the names of the be_stack_dir_t more understandable

18 years agocreate enums for the register index numbers
Michael Beck [Sat, 25 Mar 2006 11:10:32 +0000 (11:10 +0000)]
create enums for the register index numbers
make the arch_register_t declarations extern in the header and place definitions in the source

18 years agoBugFix: use new get_ia32_immop_type() instead of get_ia32_op_type()
Michael Beck [Sat, 25 Mar 2006 11:08:20 +0000 (11:08 +0000)]
BugFix: use new get_ia32_immop_type() instead of get_ia32_op_type()

18 years agoBugFix: test can only be created for a&b == 0 or a&b != 0
Michael Beck [Sat, 25 Mar 2006 11:06:24 +0000 (11:06 +0000)]
BugFix: test can only be created for a&b == 0 or a&b != 0

18 years agocreate sub esp, imm instead off add esp -imm instructions
Michael Beck [Fri, 24 Mar 2006 18:21:11 +0000 (18:21 +0000)]
create sub esp, imm instead off add esp -imm instructions

18 years agocopy the debug info when craeting a be_Call form a Call
Michael Beck [Fri, 24 Mar 2006 18:17:26 +0000 (18:17 +0000)]
copy the debug info when craeting a be_Call form a Call

18 years agoemit additional debug info
Christian Würdig [Fri, 24 Mar 2006 17:27:20 +0000 (17:27 +0000)]
emit additional debug info

18 years agochanged ia32 attribute structure and switched to idents
Christian Würdig [Fri, 24 Mar 2006 17:26:58 +0000 (17:26 +0000)]
changed ia32 attribute structure and switched to idents

18 years agoenabled right defines
Daniel Grund [Fri, 24 Mar 2006 17:02:21 +0000 (17:02 +0000)]
enabled right defines

18 years agocreate register slots in attributes on irg obstack
Christian Würdig [Fri, 24 Mar 2006 15:06:56 +0000 (15:06 +0000)]
create register slots in attributes on irg obstack
fixed some bugs

18 years agoadded two new fucntions for getting first and last opcode
Christian Würdig [Fri, 24 Mar 2006 14:46:06 +0000 (14:46 +0000)]
added two new fucntions for getting first and last opcode

18 years agoadded copy attr function
Christian Würdig [Fri, 24 Mar 2006 14:45:48 +0000 (14:45 +0000)]
added copy attr function

18 years agoadditional debug output
Christian Würdig [Fri, 24 Mar 2006 14:45:18 +0000 (14:45 +0000)]
additional debug output

18 years agoAdd debug retriever
Michael Beck [Fri, 24 Mar 2006 11:26:41 +0000 (11:26 +0000)]
Add debug retriever

18 years agoAdd debug info retriever
Michael Beck [Fri, 24 Mar 2006 11:25:51 +0000 (11:25 +0000)]
Add debug info retriever

18 years agoRenaming of a type.
Daniel Grund [Fri, 24 Mar 2006 10:36:45 +0000 (10:36 +0000)]
Renaming of a type.
Comments.
QuickFix for heuristic/ou problem with reg constraints and the order of the units.

18 years agoFixed a bug?
Sebastian Hack [Fri, 24 Mar 2006 10:31:48 +0000 (10:31 +0000)]
Fixed a bug?

Using Firm visited number to indicate if a block has been traversed

18 years agoadded 8Bit Conv_I2I node
Christian Würdig [Fri, 24 Mar 2006 10:06:41 +0000 (10:06 +0000)]
added 8Bit Conv_I2I node

18 years agoadapted to beabi interface changes
Christian Würdig [Fri, 24 Mar 2006 10:06:05 +0000 (10:06 +0000)]
adapted to beabi interface changes

18 years agofixed CopyKeep register class bug
Christian Würdig [Fri, 24 Mar 2006 10:05:08 +0000 (10:05 +0000)]
fixed CopyKeep register class bug

18 years agofixed indents
Christian Würdig [Fri, 24 Mar 2006 10:04:52 +0000 (10:04 +0000)]
fixed indents

18 years agoFixed bug with modes of the Projs from the Barrier
Sebastian Hack [Fri, 24 Mar 2006 09:02:40 +0000 (09:02 +0000)]
Fixed bug with modes of the Projs from the Barrier

18 years agoCreating Bads instead of Unknowns
Sebastian Hack [Fri, 24 Mar 2006 08:49:46 +0000 (08:49 +0000)]
Creating Bads instead of Unknowns

18 years agoFixed a bug
Sebastian Hack [Thu, 23 Mar 2006 15:52:51 +0000 (15:52 +0000)]
Fixed a bug

18 years agoFixed a bug in CopyKeep
Sebastian Hack [Thu, 23 Mar 2006 15:52:09 +0000 (15:52 +0000)]
Fixed a bug in CopyKeep

18 years agoAdded alignment/space before and after for stack args
Sebastian Hack [Thu, 23 Mar 2006 15:51:09 +0000 (15:51 +0000)]
Added alignment/space before and after for stack args

18 years agocleanup
Christian Würdig [Thu, 23 Mar 2006 15:14:11 +0000 (15:14 +0000)]
cleanup

18 years agoadded feature to specify and initialize additional attributes in standard constructor
Christian Würdig [Thu, 23 Mar 2006 15:13:19 +0000 (15:13 +0000)]
added feature to specify and initialize additional attributes in standard constructor

18 years agoclear remat flag in AM nodes
Christian Würdig [Thu, 23 Mar 2006 14:19:23 +0000 (14:19 +0000)]
clear remat flag in AM nodes