[GTK] Enable the LLInt
authorwingo@igalia.com <wingo@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 6 Jun 2012 16:00:38 +0000 (16:00 +0000)
committerwingo@igalia.com <wingo@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 6 Jun 2012 16:00:38 +0000 (16:00 +0000)
commit2c5c928d35d4071501a2eba52aaca91ebf6756eb
treec5322be08b1916140887de0a0d816734c035be05
parent12208d3bd52fd97aa5c475c357e6905279b0620a
[GTK] Enable the LLInt
https://bugs.webkit.org/show_bug.cgi?id=88315

Reviewed by Filip Pizlo.

.:

* configure.ac: Require Ruby, to build the low-level interpreter.

Source/JavaScriptCore:

* GNUmakefile.am: Add rules to generate LLIntDesiredOffsets.h and
LLIntAssembly.h.
* GNUmakefile.list.am: Add offlineasm and llint files to the
dist.  Add LLInt source files to the build.
* llint/LowLevelInterpreter.asm (crash): Generate a store of
0xbbadbeef to a register, not to a constant.  Otherwise, gas was
failing to assemble result.
* offlineasm/asm.rb (labelReference): Generate a
SYMBOL_STRING_RELOCATION instead of a SYMBOL_STRING, so that we go
through the PLT on ELF systems.

Source/WTF:

* wtf/InlineASM.h: Add an implementation of LOCAL_LABEL_STRING for
OS(LINUX).
* wtf/Platform.h: Add OS(LINUX) to the set of operating systems
for ENABLE_LLINT.  Add a specific check for PLATFORM(MAC) or
PLATFORM(IOS), and add to that a check for PLATFORM(GTK).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@119593 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ChangeLog
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/GNUmakefile.am
Source/JavaScriptCore/GNUmakefile.list.am
Source/JavaScriptCore/llint/LowLevelInterpreter.asm
Source/JavaScriptCore/offlineasm/asm.rb
Source/WTF/ChangeLog
Source/WTF/wtf/InlineASM.h
Source/WTF/wtf/Platform.h
configure.ac