summary refs log tree commit diff
path: root/lisc
AgeCommit message (Collapse)Author
2015-10-30break phi-classes following interferencesQuentin Carbonneaux
2015-10-30remove liveness heuristic in fillphi()Quentin Carbonneaux
2015-10-30new regalloc heuristic for phisQuentin Carbonneaux
At the beginning of each block look at the phi nodes that have some arguments already allocated. If the some arguments from blocks with high execution frequency are all assigned 'r', reset the the hint for the phi node to this 'r'. Combined with the following heuristic, this can save some copies at the end of the destination blocks.
2015-10-30wip on regalloc new heuristicsQuentin Carbonneaux
I thought that many parallel copies generated can be avoided if temporaries are in their hint register at the beginning of blocks with multiple predecessors. To get more benefit, I suspect that we could use a copy-propagating peephole pass.
2015-10-30setup hints for function argumentsQuentin Carbonneaux
2015-10-30prioritize reg. allocation of some temporariesQuentin Carbonneaux
2015-10-30this test optimization is sometimes incorrectQuentin Carbonneaux
2015-10-30change extension in sum exampleQuentin Carbonneaux
2015-10-30simplify constant handling in amatch()Quentin Carbonneaux
2015-10-30fix bug in constants additionQuentin Carbonneaux
2015-10-30small fix in memory refs emissionQuentin Carbonneaux
2015-10-30store constant addresses in Mem.offsetQuentin Carbonneaux
2015-10-30print memory references in IR dumpsQuentin Carbonneaux
2015-10-30don't share mems containing temporariesQuentin Carbonneaux
This can cause trouble in register allocation when these temporaries get replaced by registers. On the other hand, offsetted slots and constants can safely be shared.
2015-10-30turn sum.ssa more C styleQuentin Carbonneaux
2015-10-30port rega.c to work with RAMemQuentin Carbonneaux
2015-10-30oops, another bug in sum.ssaQuentin Carbonneaux
2015-10-30add support for RAMem in emitQuentin Carbonneaux
2015-10-30port spill.c to work with RAMemQuentin Carbonneaux
2015-10-30mention addressing modes in isel main commentQuentin Carbonneaux
2015-10-30fix typo bug in livenessQuentin Carbonneaux
2015-10-30start integrating RAMem referencesQuentin Carbonneaux
2015-10-30prepare for using memory refsQuentin Carbonneaux
2015-10-30fix test for load foldingQuentin Carbonneaux
2015-10-30stick scales close to their instructionQuentin Carbonneaux
2015-10-30fix minor bug in sum.ssaQuentin Carbonneaux
2015-10-30add a test for addressing mode optimizationQuentin Carbonneaux
2015-10-30start work on fusing loads in arithmeticQuentin Carbonneaux
2015-10-30first attempt at address matchingQuentin Carbonneaux
2015-10-30new function to add constantsQuentin Carbonneaux
2015-10-30cosmetics on address numbering codeQuentin Carbonneaux
2015-10-30store addressability infos in a structQuentin Carbonneaux
2015-10-30do not give an addressability number to scalesQuentin Carbonneaux
2015-10-30store child matchings in the addressing tableQuentin Carbonneaux
2015-10-30missed a few cases in the tree automatonQuentin Carbonneaux
2015-10-30make the echo test return 0Quentin Carbonneaux
2015-10-30fix bug in pretty printerQuentin Carbonneaux
2015-10-30start adress mode recognitionQuentin Carbonneaux
2015-10-30rename spill field in Tmp to slotQuentin Carbonneaux
2015-10-30use new loadl instruction in echoQuentin Carbonneaux
2015-10-30emit code for extensions, move slots into RAltQuentin Carbonneaux
2015-10-19uniformize sign extension and mem loadsQuentin Carbonneaux
2015-10-13rename valloc and ballocQuentin Carbonneaux
valloc is actually a POSIX function that prevents compilation on some systems.
2015-10-08change end comment for functionsQuentin Carbonneaux
2015-10-08fix minor bug in regaQuentin Carbonneaux
The detection of empty permutations was incorrect since the changes made to the vector routines.
2015-10-08improve debug outputQuentin Carbonneaux
2015-10-08allow multiple functions in fileQuentin Carbonneaux
2015-10-08use DEnd for strings tooQuentin Carbonneaux
2015-10-08emit alignment directives properlyQuentin Carbonneaux
2015-10-08rename ealloc to emallocQuentin Carbonneaux