Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(23)

Issue 90053: Fix the LLVM JIT to allocate globals outside function bodies (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
13 years ago by Reid Kleckner
Modified:
12 years, 11 months ago
CC:
unladen-swallow_googlegroups.com
Base URL:
http://llvm.org/svn/llvm-project/llvm/trunk/
Visibility:
Public.

Description

Add an option to allocate JITed global data separately from code. By default, this option is not enabled to support clients who rely on this behavior. Fixes http://llvm.org/PR4483 A patch to allocate additional memory for globals after we run out is forthcoming.

Patch Set 1 #

Patch Set 2 : Last patch returned 500, ensuring success #

Patch Set 3 : Switched to using a bump allocator for global data. #

Patch Set 4 : Deleting commented out method. #

Patch Set 5 : Added static switch to enable old behavior which is off by default. #

Patch Set 6 : Addressed Evan's comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+291 lines, -72 lines) Patch
M include/llvm/CodeGen/JITCodeEmitter.h View 1 2 1 chunk +5 lines, -0 lines 0 comments Download
M include/llvm/ExecutionEngine/ExecutionEngine.h View 3 chunks +16 lines, -4 lines 0 comments Download
M include/llvm/ExecutionEngine/JITMemoryManager.h View 1 2 3 4 5 3 chunks +10 lines, -1 line 0 comments Download
M lib/ExecutionEngine/ExecutionEngine.cpp View 2 chunks +4 lines, -3 lines 0 comments Download
M lib/ExecutionEngine/Interpreter/Interpreter.h View 1 chunk +2 lines, -1 line 0 comments Download
M lib/ExecutionEngine/Interpreter/Interpreter.cpp View 2 chunks +2 lines, -2 lines 0 comments Download
M lib/ExecutionEngine/JIT/JIT.h View 5 3 chunks +15 lines, -6 lines 0 comments Download
M lib/ExecutionEngine/JIT/JIT.cpp View 1 2 3 4 5 4 chunks +41 lines, -37 lines 0 comments Download
M lib/ExecutionEngine/JIT/JITEmitter.cpp View 1 2 2 chunks +10 lines, -0 lines 0 comments Download
M lib/ExecutionEngine/JIT/JITMemoryManager.cpp View 1 2 3 4 5 10 chunks +57 lines, -16 lines 0 comments Download
M lib/ExecutionEngine/JIT/TargetSelect.cpp View 2 chunks +3 lines, -2 lines 0 comments Download
A unittests/ExecutionEngine/JIT/JITTest.cpp View 1 2 3 4 5 1 chunk +126 lines, -0 lines 0 comments Download

Messages

Total messages: 1
Reid Kleckner
13 years ago (2009-06-30 22:12:25 UTC) #1
Here's an initial pass at fixing globals in LLVM.  This doesn't address
compatibility with the unnamed unknown group that Johannes represents, yet. 
However, if they implement a custom memory manager they could trap
allocateGlobal and do the right thing for them.  On the third hand, Johannes
says they "want to make no code changes".
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b