Christian Würdig [Fri, 7 Apr 2006 14:04:25 +0000 (14:04 +0000)]
added missing includes
Christian Würdig [Fri, 7 Apr 2006 14:04:06 +0000 (14:04 +0000)]
fixed indents
Christian Würdig [Fri, 7 Apr 2006 13:10:11 +0000 (13:10 +0000)]
added const irn classifier
modified scheduler
Christian Würdig [Fri, 7 Apr 2006 09:06:03 +0000 (09:06 +0000)]
added addtional statistics
changed name prefix for SSE floating point nodes from f to x
Michael Beck [Fri, 7 Apr 2006 08:55:07 +0000 (08:55 +0000)]
Add some Processor specific instruction selections
Michael Beck [Thu, 6 Apr 2006 16:47:58 +0000 (16:47 +0000)]
Handle new ia32_isa_t type
comments added
Michael Beck [Thu, 6 Apr 2006 16:47:27 +0000 (16:47 +0000)]
add code for MinGW gas support
Michael Beck [Thu, 6 Apr 2006 16:44:53 +0000 (16:44 +0000)]
create push ebp/pop ebp for frame pointer setups
creates a CopyKeep to prevent the usage of esp before it is copied to ebp
ia32_isa_t structure now includes the arch_isa_t (real derivation)
Michael Beck [Thu, 6 Apr 2006 16:39:48 +0000 (16:39 +0000)]
moved be_return creation to it's own function, alloweing to create
a be_return feven if there was none (as it happens in endless loops)
Moved the initial IncSP before teh Barrier. This prevents spilling (which uses fp)
to be done before sp is increased, arghhh
Christian Würdig [Thu, 6 Apr 2006 16:01:30 +0000 (16:01 +0000)]
removed 64bit convs
Christian Würdig [Thu, 6 Apr 2006 16:01:15 +0000 (16:01 +0000)]
activated deadnode elimination
Michael Beck [Thu, 6 Apr 2006 15:35:37 +0000 (15:35 +0000)]
handle keep-alive Blocks
Christian Würdig [Thu, 6 Apr 2006 14:45:56 +0000 (14:45 +0000)]
added attr compare function for converts (fixed Conv CSE)
Christian Würdig [Thu, 6 Apr 2006 14:19:51 +0000 (14:19 +0000)]
fixed binop emitter for Source AM
added UKNWN register
set Unknown nodes to ignore and assign them the UKNWN register
Sebastian Hack [Thu, 6 Apr 2006 12:06:32 +0000 (12:06 +0000)]
Fixed a bug
Michael Beck [Thu, 6 Apr 2006 11:33:59 +0000 (11:33 +0000)]
fixed return type of be_set_IncSP_pred()
Sebastian Hack [Thu, 6 Apr 2006 11:27:51 +0000 (11:27 +0000)]
Added beinsn.c
Sebastian Hack [Thu, 6 Apr 2006 11:20:46 +0000 (11:20 +0000)]
Added included support for be_insn_t
Sebastian Hack [Thu, 6 Apr 2006 11:19:53 +0000 (11:19 +0000)]
Added insn support
Michael Beck [Wed, 5 Apr 2006 21:42:39 +0000 (21:42 +0000)]
Add tarval attribute to fConst
Michael Beck [Wed, 5 Apr 2006 21:41:43 +0000 (21:41 +0000)]
removed the arm_transform_env_t structure
Christian Würdig [Wed, 5 Apr 2006 16:19:19 +0000 (16:19 +0000)]
fixed ia32_emit_binop
fixed copy insertion
Christian Würdig [Wed, 5 Apr 2006 14:50:43 +0000 (14:50 +0000)]
fixed DivMods
Christian Würdig [Wed, 5 Apr 2006 13:29:14 +0000 (13:29 +0000)]
fixed prologue
Michael Beck [Wed, 5 Apr 2006 13:14:01 +0000 (13:14 +0000)]
used generic functions for transform
Michael Beck [Wed, 5 Apr 2006 13:13:26 +0000 (13:13 +0000)]
removed unnecessary tabs
Christian Würdig [Wed, 5 Apr 2006 13:01:42 +0000 (13:01 +0000)]
added ia32 optimization options libcore conform
fixed indents
added should be same constraint for lea
added additional statistics
Sebastian Hack [Wed, 5 Apr 2006 12:20:42 +0000 (12:20 +0000)]
Get additional ignore registers from ABI
Sebastian Hack [Wed, 5 Apr 2006 12:19:46 +0000 (12:19 +0000)]
Fixed some bugs
ABI provides additional ignore registers in a set
Sebastian Hack [Wed, 5 Apr 2006 12:19:05 +0000 (12:19 +0000)]
Added EOL :-)
Michael Beck [Wed, 5 Apr 2006 11:11:30 +0000 (11:11 +0000)]
used generic function for the transformers
Christian Würdig [Wed, 5 Apr 2006 10:39:54 +0000 (10:39 +0000)]
made omitfp default, option is now noomitfp
Michael Beck [Wed, 5 Apr 2006 09:04:48 +0000 (09:04 +0000)]
add support for fp to gp convert
Michael Beck [Tue, 4 Apr 2006 16:40:19 +0000 (16:40 +0000)]
Implement access functions for machine nodes with machine operands
Christian Würdig [Tue, 4 Apr 2006 15:45:23 +0000 (15:45 +0000)]
fixed commutative flag for adds
Michael Beck [Tue, 4 Apr 2006 15:26:00 +0000 (15:26 +0000)]
implemented basic int<->fp conversion
Michael Beck [Tue, 4 Apr 2006 15:25:18 +0000 (15:25 +0000)]
handle vfild and vfist needed for mode conversion
Michael Beck [Tue, 4 Apr 2006 15:24:30 +0000 (15:24 +0000)]
fixed fist/fistp emit
Christian Würdig [Tue, 4 Apr 2006 14:44:39 +0000 (14:44 +0000)]
skip optimized IncSPs
Christian Würdig [Tue, 4 Apr 2006 14:44:26 +0000 (14:44 +0000)]
added function to set be_IncSP pred
Christian Würdig [Tue, 4 Apr 2006 14:24:23 +0000 (14:24 +0000)]
added CJmp statistics
Christian Würdig [Tue, 4 Apr 2006 13:55:28 +0000 (13:55 +0000)]
debug statistic macros
Christian Würdig [Tue, 4 Apr 2006 13:55:06 +0000 (13:55 +0000)]
fixed address mode
fixed indents
added statistics
Christian Würdig [Tue, 4 Apr 2006 13:50:25 +0000 (13:50 +0000)]
fixed indents, typos
added additional dbg module for am optimize
Michael Beck [Tue, 4 Apr 2006 13:04:43 +0000 (13:04 +0000)]
used new machine user bit 0 to detect x87 instructions
Michael Beck [Tue, 4 Apr 2006 13:02:10 +0000 (13:02 +0000)]
use the new machine user bit to mark x87 instructions
Michael Beck [Tue, 4 Apr 2006 06:13:58 +0000 (06:13 +0000)]
Add peephole optimization to create Push & Pop, might be better to move this one to transform ...
Michael Beck [Tue, 4 Apr 2006 06:11:46 +0000 (06:11 +0000)]
ia32_finish_irg_walker() now always calls peephole optimization
ia32_finish_irg/( now iterates over the block schedule
Michael Beck [Tue, 4 Apr 2006 06:09:27 +0000 (06:09 +0000)]
Push, Pop, Enter and Leave added
Michael Beck [Tue, 4 Apr 2006 06:08:29 +0000 (06:08 +0000)]
BugFix: Check that the frame_pointer is a Proj(Barrier) before setting it to ignore
BugFix: When doing sequentiel parameter stores, reverse teh args if the stack growns backwards,
fix memory for IncSP dependency
Michael Beck [Tue, 4 Apr 2006 06:05:46 +0000 (06:05 +0000)]
be_get_IncSP_mem() added
Michael Beck [Mon, 3 Apr 2006 16:41:08 +0000 (16:41 +0000)]
Fixed register allocation for fp != sp
Removed useless Alloc nodes
add omitfp parameter
Michael Beck [Mon, 3 Apr 2006 16:39:11 +0000 (16:39 +0000)]
used irtools.h
Michael Beck [Mon, 3 Apr 2006 16:38:47 +0000 (16:38 +0000)]
fixed prolog & epilog for ebp usage
Michael Beck [Mon, 3 Apr 2006 16:37:58 +0000 (16:37 +0000)]
add missing FP_USED()
Michael Beck [Mon, 3 Apr 2006 16:33:56 +0000 (16:33 +0000)]
include "obst.h" instead of <obstack.h>
Michael Beck [Mon, 3 Apr 2006 16:33:28 +0000 (16:33 +0000)]
used new scheduler interface with nodeset
Michael Beck [Mon, 3 Apr 2006 16:32:50 +0000 (16:32 +0000)]
add more info for be_Call and be_IncSP
Michael Beck [Mon, 3 Apr 2006 13:45:13 +0000 (13:45 +0000)]
used "obst.h" instead of <obstack.h>
Michael Beck [Mon, 3 Apr 2006 13:44:20 +0000 (13:44 +0000)]
added DBG_OPT_LEA( to report Lea craetion to the firm statistic module
Michael Beck [Mon, 3 Apr 2006 13:42:47 +0000 (13:42 +0000)]
added missing include
Michael Beck [Mon, 3 Apr 2006 13:26:32 +0000 (13:26 +0000)]
implemented nodeset: a pointer set using node numbers to hash
ir_nodes. This should make teh scheduler more deterministic
Michael Beck [Mon, 3 Apr 2006 13:21:51 +0000 (13:21 +0000)]
be numbers have the be_ prefix to distinguish them from "normal" ir nodes
Michael Beck [Mon, 3 Apr 2006 11:48:13 +0000 (11:48 +0000)]
add missing initialization
Christian Würdig [Mon, 3 Apr 2006 11:09:46 +0000 (11:09 +0000)]
fixed function param type into const
fixed indents
Christian Würdig [Mon, 3 Apr 2006 11:08:37 +0000 (11:08 +0000)]
renamed ppc isa option into ppc32
Christian Würdig [Mon, 3 Apr 2006 11:08:12 +0000 (11:08 +0000)]
fixed options
Christian Würdig [Mon, 3 Apr 2006 09:28:06 +0000 (09:28 +0000)]
register options for cmdline
Michael Beck [Mon, 3 Apr 2006 08:50:36 +0000 (08:50 +0000)]
changed for new interface
Michael Beck [Sun, 2 Apr 2006 21:32:57 +0000 (21:32 +0000)]
interface changed: outfile is transmitted to the isa, not to the code generators
decls are created now last
moved entity cache to isa, so Fp constants are only created once
Michael Beck [Sun, 2 Apr 2006 21:30:13 +0000 (21:30 +0000)]
updated for new i/f and latest backend praktikum changes
Michael Beck [Sun, 2 Apr 2006 21:29:07 +0000 (21:29 +0000)]
interface changed: outfile is transmitted to the isa, not to the code generators
Michael Beck [Sun, 2 Apr 2006 21:28:51 +0000 (21:28 +0000)]
interface changed: outfile is transmitted to the isa, not to the code generators
Michael Beck [Sun, 2 Apr 2006 21:28:34 +0000 (21:28 +0000)]
interface changed: outfile is transmitted to the isa, not to the code generators
Michael Beck [Sun, 2 Apr 2006 21:22:44 +0000 (21:22 +0000)]
interface changed: outfile is transmitted to the isa, not to the code generators
Michael Beck [Sun, 2 Apr 2006 21:19:52 +0000 (21:19 +0000)]
interface changed: outfile is transmitted to the isa, not to the code generators
Christian Würdig [Sun, 2 Apr 2006 18:08:46 +0000 (18:08 +0000)]
added statistics for perm lowering
Michael Beck [Sun, 2 Apr 2006 11:33:21 +0000 (11:33 +0000)]
Big Changes:
- reorganized most instructions to have _i and normal forms
- added support for shift-operand and condition
- removed unused double fp opcodes, use mode instead (not working yet)
- new constant create algorithm creates shorter sequences
- dumper now writes immediate operands
Michael Beck [Sun, 2 Apr 2006 11:28:01 +0000 (11:28 +0000)]
removed ia32_register_additional_opcodes(), not needed anymore
Michael Beck [Sun, 2 Apr 2006 11:26:40 +0000 (11:26 +0000)]
used entity ld_name
generates add/sub esp
Michael Beck [Sun, 2 Apr 2006 11:20:50 +0000 (11:20 +0000)]
placed register_options() last in the interface
add comments for the supported command line options
Michael Beck [Sun, 2 Apr 2006 11:19:38 +0000 (11:19 +0000)]
removed ppc32_register_additional_opcodes(), not needed anymore
Michael Beck [Sun, 2 Apr 2006 11:18:37 +0000 (11:18 +0000)]
placed register_options() last in the interface
Michael Beck [Sun, 2 Apr 2006 11:17:51 +0000 (11:17 +0000)]
fixed doxygen comments
Michael Beck [Sun, 2 Apr 2006 11:16:41 +0000 (11:16 +0000)]
removed mips_register_additional_opcodes(), not needed anymore
Michael Beck [Sun, 2 Apr 2006 11:15:55 +0000 (11:15 +0000)]
placed register_options() last in the interface
Michael Beck [Sun, 2 Apr 2006 11:15:12 +0000 (11:15 +0000)]
placed register_options() last in the interface
Michael Beck [Sun, 2 Apr 2006 11:14:17 +0000 (11:14 +0000)]
removed unused be_opt_error_handler()
Michael Beck [Sun, 2 Apr 2006 11:13:15 +0000 (11:13 +0000)]
add missing op_be_CopyKeep
Michael Beck [Sun, 2 Apr 2006 11:12:21 +0000 (11:12 +0000)]
placed register_options() last in the interface
Michael Beck [Sun, 2 Apr 2006 11:10:24 +0000 (11:10 +0000)]
include "obst.h" instead of hand generated code
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
Christian Würdig [Fri, 31 Mar 2006 20:19:11 +0000 (20:19 +0000)]
fixed Jump Tables
Michael Beck [Fri, 31 Mar 2006 17:47:22 +0000 (17:47 +0000)]
removed wrong instructions with traps on overflow
Michael Beck [Fri, 31 Mar 2006 17:46:18 +0000 (17:46 +0000)]
removed IncSP schedule before me work-around (did not work ;-)
Michael Beck [Fri, 31 Mar 2006 17:45:11 +0000 (17:45 +0000)]
add ia32 command line handler for fp-unit and architecture
Christian Würdig [Fri, 31 Mar 2006 16:56:10 +0000 (16:56 +0000)]
extended test file
Christian Würdig [Fri, 31 Mar 2006 16:55:46 +0000 (16:55 +0000)]
added silence emitter for Projs and Phis
Christian Würdig [Fri, 31 Mar 2006 16:55:26 +0000 (16:55 +0000)]
changed SwitchJmp emitter (but still broken in some cases)
Christian Würdig [Fri, 31 Mar 2006 16:55:03 +0000 (16:55 +0000)]
fixed addressmode