JavaScript:Compiler References: Difference between revisions
Jump to navigation
Jump to search
(→JIT) |
|||
Line 32: | Line 32: | ||
* [http://www.cs.utexas.edu/users/mckinley/395Tmm/talks/May-4-MMTk.ppt Myths & Realties The Performance Impact of Garbage Collection] | * [http://www.cs.utexas.edu/users/mckinley/395Tmm/talks/May-4-MMTk.ppt Myths & Realties The Performance Impact of Garbage Collection] | ||
* [http://www.research.ibm.com/mre05/Click.pdf Pauseless GC in the Azul JVM] | * [http://www.research.ibm.com/mre05/Click.pdf Pauseless GC in the Azul JVM] | ||
* [www.usenix.org/events/vee05/full_papers/p46-click.pdf The Pauseless GC Algorithm] | * [http://www.usenix.org/events/vee05/full_papers/p46-click.pdf The Pauseless GC Algorithm] | ||
* [http://www.iecc.com/gclist/GC-faq.html GC FAQ] | * [http://www.iecc.com/gclist/GC-faq.html GC FAQ] | ||
* [http://blogs.msdn.com/b/abhinaba/archive/2009/01/25/back-to-basic-series-on-dynamic-memory-management.aspx Back to basic: Series on dynamic memory management] | * [http://blogs.msdn.com/b/abhinaba/archive/2009/01/25/back-to-basic-series-on-dynamic-memory-management.aspx Back to basic: Series on dynamic memory management] |
Revision as of 11:39, 25 July 2011
JIT
- PyCon 2010:How to Compile Python x86 Assembly, the Python Way (3h talk)
- Tracing the meta-level: PyPy's tracing JIT compiler
- Trace-based Just-in-Time Type Specialization for Dynamic Languages
- JIT spraying and mitigations
- security implications of jit compilation
- Fast, effective code generation in a just-in-time Java compiler
SSA
- SSA-based Compiler Design Book
- SCC-Based Value Numbering
- Efficiently Computing Static Single Assignment Form and the Control Dependence Graph
- Value numbering
- Linear Scan Register Allocation on SSA Form
VM
- The Implementation of Lua 5.0
- Language-Independent Sandboxing of Just-In-Time Compilation and Self-Modifying Code (see http://groups.google.com/group/mozilla.dev.tech.js-engine.internals/browse_thread/thread/4a63ab71f6c50fce)
- Interpreter Exploitation
- Representing type information in dynamically typed languages
- Mozilla’s New JavaScript Value Representation (NaN boxing, mirrored by me)
- value-representation-in-javascript-implementations
- The Case for Virtual Register Machines
- Virtual Machine Showdown: Stack Versus Registers
- Ropes: an Alternative to Strings
- Array Bounds Check Elimination Utilizing a Page Protection Mechanism
Garbage Collection
- Waste Not, Want Not Resource-based Garbage Collection in a Shared Environment (see http://groups.google.com/group/mozilla.dev.tech.js-engine.internals/browse_thread/thread/4a63ab71f6c50fce)
- Myths & Realties The Performance Impact of Garbage Collection
- Pauseless GC in the Azul JVM
- The Pauseless GC Algorithm
- GC FAQ
- Back to basic: Series on dynamic memory management
- A fast write barrier for generational garbage collectors
Assembly
- Optimizing subroutines in assembly language
- The microarchitecture of Intel, AMD and VIA CPUs An optimization guide for assembly programmers and compiler makers
- The PowerPC Compiler Writer’s Guide