libfirm
13 years agoremove obsolete/unused debug stuff in ADTs
Matthias Braun [Fri, 5 Nov 2010 13:25:07 +0000 (13:25 +0000)]
remove obsolete/unused debug stuff in ADTs

[r28131]

13 years agofix for c++ commit
Matthias Braun [Thu, 4 Nov 2010 13:53:41 +0000 (13:53 +0000)]
fix for c++ commit

[r28130]

13 years agocompile as C++ in msvc
Matthias Braun [Thu, 4 Nov 2010 12:15:34 +0000 (12:15 +0000)]
compile as C++ in msvc

[r28128]

13 years agomake firm compilable with a c++ compiler
Matthias Braun [Thu, 4 Nov 2010 12:15:30 +0000 (12:15 +0000)]
make firm compilable with a c++ compiler

[r28127]

13 years agoRemove the unused functions print_firm_kind() and firm_identify_thing().
Matthias Braun [Thu, 4 Nov 2010 12:15:24 +0000 (12:15 +0000)]
Remove the unused functions print_firm_kind() and firm_identify_thing().

[r28126]

13 years agoremove unused seqnumbers modules
Matthias Braun [Thu, 4 Nov 2010 12:15:24 +0000 (12:15 +0000)]
remove unused seqnumbers modules

[r28125]

13 years agoremove set_.*_member type functions, as you can too easily violate the owner <->...
Matthias Braun [Thu, 28 Oct 2010 12:37:54 +0000 (12:37 +0000)]
remove set_.*_member type functions, as you can too easily violate the owner <-> member relationship

[r28120]

13 years agoGit wants to change line endings for those ...
Michael Beck [Wed, 27 Oct 2010 21:48:27 +0000 (21:48 +0000)]
Git wants to change line endings for those ...

[r28119]

13 years agoFixed typo.
Michael Beck [Wed, 27 Oct 2010 21:48:20 +0000 (21:48 +0000)]
Fixed typo.

[r28118]

13 years agolet Bad and NoMem nodes get automatically generated
Matthias Braun [Wed, 13 Oct 2010 14:56:03 +0000 (14:56 +0000)]
let Bad and NoMem nodes get automatically generated

[r28116]

13 years agoia32: fix intrinsics on mac
Matthias Braun [Tue, 12 Oct 2010 22:08:27 +0000 (22:08 +0000)]
ia32: fix intrinsics on mac

[r28111]

13 years agoAPI stripping
Andreas Zwinkau [Tue, 12 Oct 2010 10:35:33 +0000 (10:35 +0000)]
API stripping

All removed functions had no implementation.

[r28105]

13 years agoRemoved API function opt_loopunroll_pass
Andreas Zwinkau [Tue, 12 Oct 2010 10:25:56 +0000 (10:25 +0000)]
Removed API function opt_loopunroll_pass

Implementation already removed before

[r28104]

13 years agocleanup ir_spec and let the script generate Start,End and Sync now
Matthias Braun [Mon, 11 Oct 2010 16:52:36 +0000 (16:52 +0000)]
cleanup ir_spec and let the script generate Start,End and Sync now

[r28097]

13 years agoRemove set_opt_optimize_class_casts declaration from API
Andreas Zwinkau [Mon, 11 Oct 2010 15:00:10 +0000 (15:00 +0000)]
Remove set_opt_optimize_class_casts declaration from API

The implementation was already deleted before

[r28096]

13 years agoUpdate ir_spec for JNA direct-mode in jFirm
Andreas Zwinkau [Mon, 11 Oct 2010 12:56:51 +0000 (12:56 +0000)]
Update ir_spec for JNA direct-mode in jFirm

[r28095]

13 years agomake libfirm work with strings being const char*
Matthias Braun [Mon, 11 Oct 2010 12:02:14 +0000 (12:02 +0000)]
make libfirm work with strings being const char*

[r28090]

13 years agoSmall improvement: lower a double word x << 1 into x + x, saves one instruction on...
Michael Beck [Fri, 8 Oct 2010 21:44:42 +0000 (21:44 +0000)]
Small improvement: lower a double word x << 1 into x + x, saves one instruction on x86 ...

[r28086]

13 years agoAllow 64bit Leas (2 shifts and 1 add)
Michael Beck [Fri, 8 Oct 2010 21:28:23 +0000 (21:28 +0000)]
Allow 64bit Leas (2 shifts and 1 add)

[r28085]

13 years agoWhen lowering a double word shift, always conv the right operand to lower_unsigned...
Michael Beck [Fri, 8 Oct 2010 21:26:23 +0000 (21:26 +0000)]
When lowering a double word shift, always conv the right operand to lower_unsigned mode.

[r28084]

13 years agoExperimental support for double word irarch.
Michael Beck [Fri, 8 Oct 2010 20:51:37 +0000 (20:51 +0000)]
Experimental support for double word irarch.

include/libfirm/irarch.h
- give the mode to the eval function

ir/be/ia32/bearch_ia32.c
- the maximum allowed shift is 63 (for double-word shifts) on x86, not 31

ir/be/ia32/ia32_architecture.c
ir/be/ia32/ia32_architecture.h
- estimate the cost for 64bit operations

ir/ir/irarch.c
- pass the mode

[r28081]

13 years agoAdd missing type kind.
Michael Beck [Fri, 8 Oct 2010 20:22:57 +0000 (20:22 +0000)]
Add missing type kind.

[r28080]

13 years agoRemove the now unused function get_Proj_type().
Matthias Braun [Fri, 8 Oct 2010 19:51:54 +0000 (19:51 +0000)]
Remove the now unused function get_Proj_type().

[r28079]

13 years agoFixed typo.
Michael Beck [Fri, 8 Oct 2010 19:31:00 +0000 (19:31 +0000)]
Fixed typo.

[r28077]

13 years agoMoved enum into firm_types, fixed some typos.
Michael Beck [Fri, 8 Oct 2010 19:29:19 +0000 (19:29 +0000)]
Moved enum into firm_types, fixed some typos.

[r28076]

13 years agoMoved functions from opt_confirms.h into official header, do edgjfe can use them.
Michael Beck [Fri, 8 Oct 2010 19:20:35 +0000 (19:20 +0000)]
Moved functions from opt_confirms.h into official header, do edgjfe can use them.

[r28075]

13 years agoC99 feature removed.
Michael Beck [Fri, 8 Oct 2010 18:51:59 +0000 (18:51 +0000)]
C99 feature removed.

[r28074]

13 years agomake sparc+arm backend completely independent from beabi
Matthias Braun [Fri, 8 Oct 2010 14:02:22 +0000 (14:02 +0000)]
make sparc+arm backend completely independent from beabi

[r28073]

13 years agobackend: put ignore regs into beirg
Matthias Braun [Fri, 8 Oct 2010 14:02:20 +0000 (14:02 +0000)]
backend: put ignore regs into beirg

[r28072]

13 years agobackend: cleanup queries for ignore regs
Matthias Braun [Fri, 8 Oct 2010 14:02:19 +0000 (14:02 +0000)]
backend: cleanup queries for ignore regs

[r28071]

13 years agosparc: support mode_b lowering
Matthias Braun [Fri, 8 Oct 2010 14:02:17 +0000 (14:02 +0000)]
sparc: support mode_b lowering

[r28070]

13 years agosparc: implement omit-fp mode
Matthias Braun [Fri, 8 Oct 2010 14:02:16 +0000 (14:02 +0000)]
sparc: implement omit-fp mode

[r28069]

13 years agosparc: model restore as explicit node, refactor Save node
Matthias Braun [Fri, 8 Oct 2010 14:02:15 +0000 (14:02 +0000)]
sparc: model restore as explicit node, refactor Save node

[r28068]

13 years agosparc: crude implementation of float Unknown
Matthias Braun [Fri, 8 Oct 2010 14:02:13 +0000 (14:02 +0000)]
sparc: crude implementation of float Unknown

[r28067]

13 years agorename tarval to ir_tarval
Matthias Braun [Fri, 8 Oct 2010 13:36:56 +0000 (13:36 +0000)]
rename tarval to ir_tarval

[r28062]

13 years agofix wrong types
Matthias Braun [Fri, 8 Oct 2010 13:36:53 +0000 (13:36 +0000)]
fix wrong types

[r28061]

13 years agofix invalid double definition of irg_extblk_info_state
Matthias Braun [Fri, 8 Oct 2010 13:36:52 +0000 (13:36 +0000)]
fix invalid double definition of irg_extblk_info_state

[r28060]

13 years agoimproved and completely automatic vc2010 projectfile updater
Matthias Braun [Fri, 8 Oct 2010 13:36:51 +0000 (13:36 +0000)]
improved and completely automatic vc2010 projectfile updater

[r28059]

13 years agowin32 version of obstack_printf
Matthias Braun [Fri, 8 Oct 2010 13:36:50 +0000 (13:36 +0000)]
win32 version of obstack_printf

[r28058]

13 years agoremove rbitset_w_size type functions: a raw_bitset with a size is a bitset_t
Matthias Braun [Fri, 8 Oct 2010 13:36:50 +0000 (13:36 +0000)]
remove rbitset_w_size type functions: a raw_bitset with a size is a bitset_t

[r28057]

13 years agoadapt current_ir_graph in irg_walk
Matthias Braun [Fri, 8 Oct 2010 13:36:49 +0000 (13:36 +0000)]
adapt current_ir_graph in irg_walk

[r28056]

13 years agolower_dw: refactor to use a smart walk strategy and factoring out some common code...
Matthias Braun [Fri, 8 Oct 2010 13:36:48 +0000 (13:36 +0000)]
lower_dw: refactor to use a smart walk strategy and factoring out some common code to get a node_entry

[r28055]

13 years agolower_dw: Remove RotL special case, normal code produces the same result
Matthias Braun [Fri, 8 Oct 2010 13:36:48 +0000 (13:36 +0000)]
lower_dw: Remove RotL special case, normal code produces the same result

[r28054]

13 years agolower_dw: remove pointless comments at end of {}
Matthias Braun [Fri, 8 Oct 2010 13:36:47 +0000 (13:36 +0000)]
lower_dw: remove pointless comments at end of {}

[r28053]

13 years agolower_dw: irn_idxs are unsigned not int
Matthias Braun [Fri, 8 Oct 2010 13:36:46 +0000 (13:36 +0000)]
lower_dw: irn_idxs are unsigned not int

[r28052]

13 years agolower_dw: get away without #define magic
Matthias Braun [Fri, 8 Oct 2010 13:36:46 +0000 (13:36 +0000)]
lower_dw: get away without #define magic

[r28051]

13 years agolower_dw: be independent of current_ir_graph
Matthias Braun [Fri, 8 Oct 2010 13:36:45 +0000 (13:36 +0000)]
lower_dw: be independent of current_ir_graph

[r28050]

13 years agoFixed wrong usage of Abs node, fixed calculations, disabled broken invariant loop...
Christian Helmer [Wed, 6 Oct 2010 15:24:53 +0000 (15:24 +0000)]
Fixed wrong usage of Abs node, fixed calculations, disabled broken invariant loop unrolling.

[r28049]

13 years agoremove irsimpletype stuff (unused/broken)
Matthias Braun [Wed, 6 Oct 2010 08:40:42 +0000 (08:40 +0000)]
remove irsimpletype stuff (unused/broken)

[r28043]

13 years agocleanup ircons code; add current_ir_graph independent construction bits; new_ir_graph...
Matthias Braun [Wed, 6 Oct 2010 08:40:41 +0000 (08:40 +0000)]
cleanup ircons code; add current_ir_graph independent construction bits; new_ir_graph does not set current_ir_graph anymore

[r28042]

13 years agomake some more optimisations independent of current_ir_graph
Matthias Braun [Wed, 6 Oct 2010 08:40:40 +0000 (08:40 +0000)]
make some more optimisations independent of current_ir_graph

[r28041]

13 years agomake reassoc independent of current_ir_graph
Matthias Braun [Wed, 6 Oct 2010 08:40:39 +0000 (08:40 +0000)]
make reassoc independent of current_ir_graph

[r28040]

13 years agoput register classes into arch_env struct, no need for complicated callbacks
Matthias Braun [Wed, 6 Oct 2010 08:40:38 +0000 (08:40 +0000)]
put register classes into arch_env struct, no need for complicated callbacks

[r28039]

13 years agochange backends to produce 1 big array with all registers
Matthias Braun [Wed, 6 Oct 2010 08:40:37 +0000 (08:40 +0000)]
change backends to produce 1 big array with all registers

[r28038]

13 years agoforbid calls of new_XXX and new_d_XXX when not in phase_building (only new_r_XXX...
Matthias Braun [Wed, 6 Oct 2010 08:40:34 +0000 (08:40 +0000)]
forbid calls of new_XXX and new_d_XXX when not in phase_building (only new_r_XXX allowed)

[r28037]

13 years agomake firm optimisations independent of current_ir_graph
Matthias Braun [Wed, 6 Oct 2010 08:40:33 +0000 (08:40 +0000)]
make firm optimisations independent of current_ir_graph

[r28036]

13 years agojumpthreading: do not rely on current_ir_graph
Matthias Braun [Wed, 6 Oct 2010 08:40:32 +0000 (08:40 +0000)]
jumpthreading: do not rely on current_ir_graph

[r28035]

13 years agoworkaround for lower_mode_b not working correctly in combination with create_cond_set
Matthias Braun [Wed, 6 Oct 2010 08:40:32 +0000 (08:40 +0000)]
workaround for lower_mode_b not working correctly in combination with create_cond_set

[r28034]

13 years agoallow_ifconv callback may not be NULL anymore
Matthias Braun [Wed, 6 Oct 2010 08:40:31 +0000 (08:40 +0000)]
allow_ifconv callback may not be NULL anymore

[r28033]

13 years agofix Phi getting optimized even when optimisations are disabled
Matthias Braun [Wed, 6 Oct 2010 08:40:30 +0000 (08:40 +0000)]
fix Phi getting optimized even when optimisations are disabled

[r28032]

13 years agofix bug in new part_block_edges function
Matthias Braun [Wed, 6 Oct 2010 08:40:29 +0000 (08:40 +0000)]
fix bug in new part_block_edges function

[r28031]

13 years agofix trailing whitespaces and tabulators in the middle of a line
Matthias Braun [Wed, 6 Oct 2010 08:40:28 +0000 (08:40 +0000)]
fix trailing whitespaces and tabulators in the middle of a line

[r28030]

13 years agoC99 feature removed.
Michael Beck [Sat, 2 Oct 2010 06:34:57 +0000 (06:34 +0000)]
C99 feature removed.

[r28028]

13 years agorefactor mode_b lowerer to have a create_set callback
Matthias Braun [Wed, 22 Sep 2010 14:07:44 +0000 (14:07 +0000)]
refactor mode_b lowerer to have a create_set callback

[r28023]

13 years agoalternative implementation of part_block which uses outedges instead of collect_phiprojs
Matthias Braun [Wed, 22 Sep 2010 14:07:43 +0000 (14:07 +0000)]
alternative implementation of part_block which uses outedges instead of collect_phiprojs

[r28022]

13 years agoremove some unnecessary/confusing flags
Matthias Braun [Wed, 22 Sep 2010 14:07:43 +0000 (14:07 +0000)]
remove some unnecessary/confusing flags

[r28021]

13 years agoremove MacroBlock concept
Matthias Braun [Wed, 22 Sep 2010 14:07:42 +0000 (14:07 +0000)]
remove MacroBlock concept

[r28020]

13 years agodifferentiate between Bad and Deleted (because of exchange) nodes, this avoid some...
Matthias Braun [Wed, 22 Sep 2010 14:07:40 +0000 (14:07 +0000)]
differentiate between Bad and Deleted (because of exchange) nodes, this avoid some invalid memory accesses when trying to get irg from a Bad node

[r28019]

13 years agono need for no_float_fold hack anymore
Matthias Braun [Wed, 22 Sep 2010 14:07:39 +0000 (14:07 +0000)]
no need for no_float_fold hack anymore

[r28018]

13 years agoremove non-strict exception mode
Matthias Braun [Wed, 22 Sep 2010 14:07:38 +0000 (14:07 +0000)]
remove non-strict exception mode

[r28017]

13 years agobackend: remove unused omitleaffp option
Matthias Braun [Wed, 22 Sep 2010 14:07:38 +0000 (14:07 +0000)]
backend: remove unused omitleaffp option

[r28016]

13 years agonode generator: don't create pn_ and n_ enums if there are no members
Matthias Braun [Wed, 22 Sep 2010 14:07:37 +0000 (14:07 +0000)]
node generator: don't create pn_ and n_ enums if there are no members

[r28015]

13 years agoremove unused functions
Matthias Braun [Wed, 22 Sep 2010 14:07:37 +0000 (14:07 +0000)]
remove unused functions

[r28014]

13 years agofix bug in switch_lowerer
Matthias Braun [Wed, 22 Sep 2010 14:07:36 +0000 (14:07 +0000)]
fix bug in switch_lowerer

[r28013]

13 years agomove typedefs from public header to private header
Matthias Braun [Wed, 22 Sep 2010 14:07:35 +0000 (14:07 +0000)]
move typedefs from public header to private header

[r28012]

13 years agooptimisations work independently of current_ir_graph now, no need to set/restore...
Matthias Braun [Wed, 22 Sep 2010 14:07:35 +0000 (14:07 +0000)]
optimisations work independently of current_ir_graph now, no need to set/restore it in node construction anymore

[r28011]

13 years agoremove ilp scheduler; simplify listsched interface
Matthias Braun [Wed, 22 Sep 2010 14:07:34 +0000 (14:07 +0000)]
remove ilp scheduler; simplify listsched interface

[r28010]

13 years agoeliminate the unnecessary and especially confusing concept of a 'code_generator'...
Matthias Braun [Wed, 22 Sep 2010 14:07:33 +0000 (14:07 +0000)]
eliminate the unnecessary and especially confusing concept of a 'code_generator' an isa-interface is enough

[r28009]

13 years agoremove some unnecessary #defines
Matthias Braun [Wed, 22 Sep 2010 14:07:31 +0000 (14:07 +0000)]
remove some unnecessary #defines

[r28008]

13 years agosparc: fix wrongly specified Stf emitter
Matthias Braun [Fri, 10 Sep 2010 13:29:26 +0000 (13:29 +0000)]
sparc: fix wrongly specified Stf emitter

[r28004]

13 years agosparc: fix fmov emitter
Matthias Braun [Fri, 10 Sep 2010 13:29:25 +0000 (13:29 +0000)]
sparc: fix fmov emitter

[r28003]

13 years agosparc: implement/fix remaining float<->int conversions
Matthias Braun [Fri, 10 Sep 2010 13:29:25 +0000 (13:29 +0000)]
sparc: implement/fix remaining float<->int conversions

[r28002]

13 years agoextend switch lowerer to produce the out-of-bounds check in firm-IR if necessary
Matthias Braun [Fri, 10 Sep 2010 13:29:24 +0000 (13:29 +0000)]
extend switch lowerer to produce the out-of-bounds check in firm-IR if necessary

[r28001]

13 years agoinvoke switch lowerer in target specific lowering pass
Matthias Braun [Fri, 10 Sep 2010 13:29:23 +0000 (13:29 +0000)]
invoke switch lowerer in target specific lowering pass

[r28000]

13 years agosparc: fix fdiv having the wrong mode
Matthias Braun [Fri, 10 Sep 2010 13:29:23 +0000 (13:29 +0000)]
sparc: fix fdiv having the wrong mode

[r27999]

13 years agosparc: rename misnamed node Slr to Srl
Matthias Braun [Fri, 10 Sep 2010 13:29:22 +0000 (13:29 +0000)]
sparc: rename misnamed node Slr to Srl

[r27998]

13 years agosparc: fix bug where calls with many parameters were broken
Matthias Braun [Fri, 10 Sep 2010 13:29:22 +0000 (13:29 +0000)]
sparc: fix bug where calls with many parameters were broken

[r27997]

13 years agosparc: renumber emit shortcuts to start with 0 instead of 1
Matthias Braun [Fri, 10 Sep 2010 13:29:21 +0000 (13:29 +0000)]
sparc: renumber emit shortcuts to start with 0 instead of 1

[r27996]

13 years agosave input requirements in be_info without complicated callback
Matthias Braun [Fri, 10 Sep 2010 13:26:25 +0000 (13:26 +0000)]
save input requirements in be_info without complicated callback

[r27995]

13 years agowe can do without the phi register requirement guessing nowadays
Matthias Braun [Fri, 10 Sep 2010 13:26:24 +0000 (13:26 +0000)]
we can do without the phi register requirement guessing nowadays

[r27994]

13 years agoia32: remove unnecessary safety check
Matthias Braun [Fri, 10 Sep 2010 13:26:23 +0000 (13:26 +0000)]
ia32: remove unnecessary safety check

[r27993]

13 years agorefactoring: split stackframe handling completely from beabi struct
Matthias Braun [Fri, 10 Sep 2010 13:26:23 +0000 (13:26 +0000)]
refactoring: split stackframe handling completely from beabi struct

[r27992]

13 years agolower_switch: retain debug info, some smaller cleanups
Matthias Braun [Fri, 10 Sep 2010 13:26:22 +0000 (13:26 +0000)]
lower_switch: retain debug info, some smaller cleanups

[r27991]

13 years agono need for an explicit lower_mode_b pass, it should only be invoked by the backend
Matthias Braun [Fri, 10 Sep 2010 13:26:21 +0000 (13:26 +0000)]
no need for an explicit lower_mode_b pass, it should only be invoked by the backend

[r27990]

13 years agoremove normalize_proj_nodes, Projs aren't in the wrong place anyway (or the verifier...
Matthias Braun [Fri, 10 Sep 2010 13:26:21 +0000 (13:26 +0000)]
remove normalize_proj_nodes, Projs aren't in the wrong place anyway (or the verifier complains)

[r27989]

13 years agoremove fragile_ops flag, it just suppresses valuable information and even was disable...
Matthias Braun [Fri, 10 Sep 2010 13:26:20 +0000 (13:26 +0000)]
remove fragile_ops flag, it just suppresses valuable information and even was disabled by default

[r27988]

13 years agoremove some unnecessary #defines and unused code
Matthias Braun [Fri, 10 Sep 2010 13:26:19 +0000 (13:26 +0000)]
remove some unnecessary #defines and unused code

[r27987]

13 years agoC99 feature removed, fixed typo.
Michael Beck [Wed, 8 Sep 2010 20:25:45 +0000 (20:25 +0000)]
C99 feature removed, fixed typo.

[r27979]

13 years agoallow backend to specify endianess, rewrite bitfield emitter to handle little and...
Matthias Braun [Mon, 6 Sep 2010 13:05:07 +0000 (13:05 +0000)]
allow backend to specify endianess, rewrite bitfield emitter to handle little and big-endian byte order

[r27974]

13 years agosparc: first attempt at using delay slots
Matthias Braun [Mon, 6 Sep 2010 13:05:06 +0000 (13:05 +0000)]
sparc: first attempt at using delay slots

[r27973]