summaryrefslogtreecommitdiffhomepage
path: root/ir/be/bespill.c
Commit message (Collapse)AuthorAge
* Unify indentation of function parametersSebastian Buchwald2017-03-31
|
* Reorganize include directivesMatthias Braun2017-02-17
|
* Remove unnecessary #include "bearch.h".Christoph Mallon2015-07-19
|
* Remove unnecessary #include "debug.h".Christoph Mallon2015-07-19
|
* Remove unnecessary #include "besched.h".Christoph Mallon2015-07-17
|
* Rename 'be.spiller' to 'be.spill.algo'.Christoph Mallon2015-07-13
|
* break arch_isa_if_t furhter apart by moving spilling related callbacks into ↵Matthias Braun2015-06-19
| | | | an own struct
* change LC_OPT_ENT_BOOL to take a bool instead of an int destinationMatthias Braun2014-09-15
|
* merge belive_t.h and belive.hMatthias Braun2014-08-21
|
* remove beintlive_t headerMatthias Braun2014-07-18
| | | | | Move the values interfere function to belive.h, move the inline implementation into belive.c
* be: change pre spill prepare phase to work on all register classes at onceMatthias Braun2014-07-07
| | | | | | | | - Only iterating over the graph once should be slightly faster - We don't need to insert the middle of register allocation logic but can perform it once before. - We can gather statistics on the prepared graph before spilling/regalloc has happened.
* Add and use foreach_irn_pred{,_r}().Christoph Mallon2014-02-17
|
* cleanup, use C99Matthias Braun2013-11-12
|
* get rid of unnecessary be_spiller_t structMatthias Braun2013-11-12
|
* do not include config.h anymoreMatthias Braun2013-05-04
| | | | | | It has been empty for nearly all systems. People who used to put stuff in config.h can still create a config.h on their own and inject -include (gcc) or /FI (msvc) into their CPPFLAGS.
* remove license stuff from filesMatthias Braun2012-12-12
| | | | | Just state the copyright and the project the files belong to. You can then find the COPYING file for the whole project.
* bearch: Make the register requirements an output parameter of ↵Christoph Mallon2012-11-28
| | | | be_foreach_definition().
* introduce be_foreach_use and use itMatthias Braun2012-11-28
|
* bearch: Use arch_register_req_is().Christoph Mallon2012-11-27
|
* rbitset: Let rbitset_alloca() return the new raw bitset.Christoph Mallon2012-11-25
|
* bearch: remove arch_register_type_joker.Christoph Mallon2012-11-25
| | | | arch_register_type_virtual is sufficient.
* Let be_foreach_definition() declare the value variable.Christoph Mallon2012-11-13
|
* make statev API publicMatthias Braun2012-10-24
|
* Let sched_foreach_from() and sched_foreach_reverse_from() declare their ↵Christoph Mallon2012-07-13
| | | | iterator variables.
* belive: cleanup livness assure/invalidate APIMatthias Braun2011-12-22
| | | | This also plugs liveness related memory leaks
* remove $Id$, it doesn't work with git anywayMatthias Braun2011-11-10
|
* simplify copy interface and respect double/aligned reqsMatthias Braun2011-08-17
|
* big refactoring of arch_XXX functionsMatthias Braun2011-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | This tries to get the names in a consistent format. We basically have 2 views on register allocation/constraints now: 1) Register Requirements and Assigments are per-instruction. Each instruction has requirements on its inputs and outputs, register get assigned for outputs of an instruction (assignment is an attribute of an instruction, not of the Proj-nodes). The internal datastructures model this form! The functions here have the form: arch_get_irn_register_req_in(node, input_nr) arch_get_irn_register_in(node, input_nr) arch_get_irn_register_req_out(node, output_nr) arch_set_irn_register_out(node, output_nr, register) 2) Register Requirements and Assignments are on firm-values. This view allows to query/assign requirements and registers at the Proj nodes instead of the repsective predecessors. This is a convenience interface modeled on top of the other! The functions have the form: arch_get_irn_register_req(node) arch_get_irn_register(node) arch_set_irn_register(node, register)
* fix cparser warningsMatthias Braun2011-04-15
|
* cleanup/flatten some backend optionsMatthias Braun2011-03-04
|
* Fixed typo.Sebastian Buchwald2011-02-10
| | | | [r28361]
* Removed the arch_register_type_is() macro.Michael Beck2010-12-06
| | | | | | Only makes it hard to search for arch_register_type_* flags. [r28185]
* make firm compilable with a c++ compilerMatthias Braun2010-11-04
| | | | [r28127]
* make sparc+arm backend completely independent from beabiMatthias Braun2010-10-08
| | | | [r28073]
* change spiller and related interface to use ir_graph* instead of be_irg_t*Matthias Braun2010-07-02
| | | | [r27691]
* - change various be_get_birg_XXX functions to be_get_irg_XXX functions.Matthias Braun2010-07-02
| | | | [r27690]
* rework bitset to use raw_bitsetMatthias Braun2010-03-12
| | | | [r27293]
* make firm (mostly) -Wmissing-prototypes cleanMatthias Braun2010-03-09
| | | | [r27277]
* fix for my last commitMatthias Braun2010-03-01
| | | | [r27250]
* spill preparation needs livenessMatthias Braun2009-09-24
| | | | [r26646]
* - further refactoring and finally eliminated the callback for get_out_reg_reqsMatthias Braun2009-09-18
| | | | | | | - Introduced be_Start which is now used instead of iro_Start+be_RegParams - further cleanups and fixes along the way [r26549]
* rename benode_t.h to benode.h, remove some unused codeMatthias Braun2009-09-17
| | | | [r26535]
* We have already asserted the condition.Sebastian Buchwald2009-09-04
| | | | [r26491]
* Skip projs before getting backend flags.Christoph Mallon2009-08-14
| | | | [r26336]
* - implement output constraint enforcement for new register allocatorMatthias Braun2009-08-11
| | | | | | - rename bespilloptions.* to bespill.* and bespill.* to bespillutil.* [r26327]
* reorganize backend headers (kill some _t variants in favor of a be_types.h)Matthias Braun2009-08-05
| | | | [r26317]
* - remove all irg parameter from node constructors having a blockMichael Beck2009-07-05
| | | | | | - SymConst's are now ALWAYS placed in the start block [r26236]
* improve sched_info datastructure, saving space and making it more efficientMatthias Braun2009-05-16
| | | | [r25982]
* - Part1 of backend reorganisation:Matthias Braun2008-10-23
| | | | | | | Node flags and node registers are stored in a generic backend_info struct now instead of every part of the backend doing custom (and slow) stuff [r23142]
* Add ALLOCAN() and ALLOCANZ().Christoph Mallon2008-10-18
| | | | [r22985]