llv8 icon indicating copy to clipboard operation
llv8 copied to clipboard

LLV8 is an experimental top-tier compiler for V8 JavaScript Engine. LLV8 leverages the power of LLVM MCJIT to produce highly optimized code.

Results 14 llv8 issues
Sort by recently updated
recently updated
newest added

I see LLV8 has modified Crankshaft. Upstream, V8 has removed Crankshaft. How feasible (how much time) would it be to rebase V8 on upstream changes? Does LLV8 depend on CrankShaft?

Fix the FIXME in `LLVMChunk::SetUpDeoptimizationData`: ``` // FIXME(llvm): This invariant fails when optimizer duplicates a deopt branch. CHECK_EQ(std::set(sorted_ids.begin(), sorted_ids.end()).size(), sorted_ids.size()); ``` This behavior manifests on zlib test from [Octane](https://github.com/chromium/octane) benchmark....

crash

Reproduce: 1. Check out Octane and remove everything except zlib (see [#9](../issues/9)) 2. Disable the CHECK from [#9](../issues/9). 3. `d8 --llvm-filter=a* --noturbo-asm run.js` ``` llvm/include/llvm/CodeGen/MachineInstr.h:1175: void llvm::MachineInstr::setMemRefs(mmo_iterator, mmo_iterator): Assertion `NumMemRefs...

crash

Reproduce: ``` d8 --noturbo-asm --llvm-filter=* llv8-regtests/c++/407.js --noturbo-asm --llvm-filter=* ``` (cd `llv8-regtests/c++ && make 407.js` if you lack the file) `(gdb) disass $pc - 130, $pc + 30` ``` ... 0x000026939469bf82:...

crash

Move these from `llvm-chunk.{h,cc}`: - Disassembly features like `LLVMGranularity::Patch`, `Disass` - `LLVMRelocationData` and `LLVMDeoptData` (and merge the two) - `IntHelper`

refactoring

See if we have any licensing issues - `src/llvm/pass-rewrite-safepoints.cc` is taken from LLVM sources - `src/llvm/llvm-stackmaps.cc` is from JavaScriptCore (but AFAIK everything should be OK provided we choose an appropriate...

During the lowering process we encounter pointers (object locations) which are to be encoded into the instruction stream (if we want to conform with what v8 already expects). For each...

correctness

Possible bug: llvm::Value\* may not be there after optimization passes. But LLVMEnvironment stores a list of llvm::Value*s. One solution is to give all of them unique names, store and lookup...

correctness

Right now we ignore HStackCheck nodes, which is of course incorrect. - Execution of llvmed code now is faster that it will be once we solve this issue. - If...

correctness

Safepoints should be inserted after optimization, not before for performance reasons. See [this talk](http://llvm.org/devmtg/2014-10/Videos/Practically%20Fully%20Relocating%20Garbage%20Collection%20in%20LLVM-360.mov) (around 20:00).

performance