Matches in SemOpenAlex for { <https://semopenalex.org/work/W1551189225> ?p ?o ?g. }
Showing items 1 to 80 of
80
with 100 items per page.
- W1551189225 abstract "This thesis describes a complete compiler back-end for lazy languages, which uses various interprocedural optimisations to produce highly optimised code. The most important contributions of this work are the following. A novel intermediate language, called GRIN (Graph Reduction Intermediate Notation), around which the first part of the back-end is built. The GRIN language has a very functional flavour, making it well suited for analysis and program transformation, but at the same time provides the machinery needed to express many concrete implementation details. We apply a program-wide control flow analysis, also called a heap points-to analysis, to the GRIN program. The result of the analysis is used to eliminate unknown control flow in the program, i.e., function calls where the call target is unknown at compile time (due to forcing of closures). We present a large number of GRIN source-to-source program transformations that are applied to the program. Most transformations are very simple but when taken together, and applied repeatedly, produce greatly simplified and optimised code. Several non-standard transformations are made possible by the low level control offered by the GRIN language (when compared to a more high level intermediate language, e.g., the STG language). Eventually, the GRIN code is translated into RISC machine code. We develop an interprocedural register allocation algorithm, with a main purpose of decreasing the function call and return overhead. The register allocation algorithm includes a new technique to optimise the placement of register save and restore instructions, related to Chow's shrink-wrapping, and extends traditional Chaitin-style graph colouring with interprocedural coalescing and a restricted form of live range splitting. The algorithm produces a tailor-made calling convention for each function (the registers used to pass function arguments and results). A combined compile time and runtime approach is used to support garbage collection in the presence of aggressive optimisations (most notably our register allocation), without imposing any mutator overhead. The method includes a runtime call stack traversal and interpretation of registers and stack frames using pre-computed descriptor tables. Experiments sofar have been very promising. For a set of small to medium-sized Haskell programs taken from the nofib benchmark suite, the code produced by our back-end executes several times faster than the code produced by some other compilers (ghc and hbc)." @default.
- W1551189225 created "2016-06-24" @default.
- W1551189225 creator A5085302355 @default.
- W1551189225 date "1999-01-01" @default.
- W1551189225 modified "2023-09-28" @default.
- W1551189225 title "Code Optimisation Techniques for Lazy Functional Languages" @default.
- W1551189225 hasPublicationYear "1999" @default.
- W1551189225 type Work @default.
- W1551189225 sameAs 1551189225 @default.
- W1551189225 citedByCount "8" @default.
- W1551189225 countsByYear W15511892252013 @default.
- W1551189225 countsByYear W15511892252014 @default.
- W1551189225 countsByYear W15511892252021 @default.
- W1551189225 crossrefType "dissertation" @default.
- W1551189225 hasAuthorship W1551189225A5085302355 @default.
- W1551189225 hasConcept C102379954 @default.
- W1551189225 hasConcept C115168132 @default.
- W1551189225 hasConcept C119024030 @default.
- W1551189225 hasConcept C128916667 @default.
- W1551189225 hasConcept C134757568 @default.
- W1551189225 hasConcept C160191386 @default.
- W1551189225 hasConcept C169590947 @default.
- W1551189225 hasConcept C190902152 @default.
- W1551189225 hasConcept C199360897 @default.
- W1551189225 hasConcept C27458966 @default.
- W1551189225 hasConcept C2778361913 @default.
- W1551189225 hasConcept C33923547 @default.
- W1551189225 hasConcept C41008148 @default.
- W1551189225 hasConcept C42383842 @default.
- W1551189225 hasConcept C45357846 @default.
- W1551189225 hasConcept C9395851 @default.
- W1551189225 hasConcept C94375191 @default.
- W1551189225 hasConcept C97042676 @default.
- W1551189225 hasConcept C98183937 @default.
- W1551189225 hasConceptScore W1551189225C102379954 @default.
- W1551189225 hasConceptScore W1551189225C115168132 @default.
- W1551189225 hasConceptScore W1551189225C119024030 @default.
- W1551189225 hasConceptScore W1551189225C128916667 @default.
- W1551189225 hasConceptScore W1551189225C134757568 @default.
- W1551189225 hasConceptScore W1551189225C160191386 @default.
- W1551189225 hasConceptScore W1551189225C169590947 @default.
- W1551189225 hasConceptScore W1551189225C190902152 @default.
- W1551189225 hasConceptScore W1551189225C199360897 @default.
- W1551189225 hasConceptScore W1551189225C27458966 @default.
- W1551189225 hasConceptScore W1551189225C2778361913 @default.
- W1551189225 hasConceptScore W1551189225C33923547 @default.
- W1551189225 hasConceptScore W1551189225C41008148 @default.
- W1551189225 hasConceptScore W1551189225C42383842 @default.
- W1551189225 hasConceptScore W1551189225C45357846 @default.
- W1551189225 hasConceptScore W1551189225C9395851 @default.
- W1551189225 hasConceptScore W1551189225C94375191 @default.
- W1551189225 hasConceptScore W1551189225C97042676 @default.
- W1551189225 hasConceptScore W1551189225C98183937 @default.
- W1551189225 hasLocation W15511892251 @default.
- W1551189225 hasOpenAccess W1551189225 @default.
- W1551189225 hasPrimaryLocation W15511892251 @default.
- W1551189225 hasRelatedWork W1532865120 @default.
- W1551189225 hasRelatedWork W1542267265 @default.
- W1551189225 hasRelatedWork W1543641760 @default.
- W1551189225 hasRelatedWork W1544906724 @default.
- W1551189225 hasRelatedWork W1558109178 @default.
- W1551189225 hasRelatedWork W1575663121 @default.
- W1551189225 hasRelatedWork W1580664042 @default.
- W1551189225 hasRelatedWork W1597497095 @default.
- W1551189225 hasRelatedWork W2004843654 @default.
- W1551189225 hasRelatedWork W2005985523 @default.
- W1551189225 hasRelatedWork W2037023397 @default.
- W1551189225 hasRelatedWork W2071457257 @default.
- W1551189225 hasRelatedWork W2078944436 @default.
- W1551189225 hasRelatedWork W2089241138 @default.
- W1551189225 hasRelatedWork W2095621310 @default.
- W1551189225 hasRelatedWork W2116827712 @default.
- W1551189225 hasRelatedWork W2184725892 @default.
- W1551189225 hasRelatedWork W2208923056 @default.
- W1551189225 hasRelatedWork W2734180996 @default.
- W1551189225 hasRelatedWork W181269922 @default.
- W1551189225 isParatext "false" @default.
- W1551189225 isRetracted "false" @default.
- W1551189225 magId "1551189225" @default.
- W1551189225 workType "dissertation" @default.