Ignore:
Timestamp:
Jun 6, 2012, 9:00:38 AM (13 years ago)
Author:
[email protected]
Message:

[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).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/GNUmakefile.am

    r116533 r119593  
    9090        $(AM_V_GEN)$(PYTHON) $^ > $@
    9191
     92DerivedSources/JavaScriptCore/LLIntDesiredOffsets.h: $(javascriptcore_sources) $(llint_nosources) $(offlineasm_nosources)
     93        $(AM_V_GEN)$(RUBY) $(srcdir)/Source/JavaScriptCore/offlineasm/generate_offset_extractor.rb $(srcdir)/Source/JavaScriptCore/llint/LowLevelInterpreter.asm $@
     94
     95$(Programs_LLIntOffsetsExtractor_OBJECTS): DerivedSources/JavaScriptCore/LLIntDesiredOffsets.h
     96
     97DerivedSources/JavaScriptCore/LLIntAssembly.h: Programs/LLIntOffsetsExtractor$(EXEEXT)
     98        $(AM_V_GEN)$(RUBY) $(srcdir)/Source/JavaScriptCore/offlineasm/asm.rb $(srcdir)/Source/JavaScriptCore/llint/LowLevelInterpreter.asm Programs/LLIntOffsetsExtractor$(EXEEXT) $@
     99
     100$(libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_OBJECTS): DerivedSources/JavaScriptCore/LLIntAssembly.h
     101
    92102jsc: $(javascriptcore_built_nosources) Programs/jsc$(EXEEXT)
    93103
     
    97107noinst_PROGRAMS += \
    98108        Programs/jsc \
    99         Programs/minidom
     109        Programs/minidom \
     110        Programs/LLIntOffsetsExtractor
    100111
    101112Programs_minidom_CPPFLAGS = \
     
    117128
    118129Programs_minidom_LDFLAGS = \
     130        -no-install \
     131        -no-fast-install
     132
     133Programs_LLIntOffsetsExtractor_CPPFLAGS = \
     134        $(global_cppflags) \
     135        $(javascriptcore_cppflags)
     136
     137Programs_LLIntOffsetsExtractor_CFLAGS = \
     138        -ansi \
     139        -fno-strict-aliasing \
     140        $(global_cflags) \
     141        $(GLOBALDEPS_CFLAGS)
     142
     143Programs_LLIntOffsetsExtractor_LDADD = \
     144        -lpthread \
     145        libWTF.la \
     146        $(UNICODE_LIBS) \
     147        $(GLIB_LIBS) \
     148        $(WINMM_LIBS) \
     149        -lm \
     150        -lpthread \
     151        -lstdc++
     152
     153Programs_LLIntOffsetsExtractor_LDFLAGS = \
    119154        -no-install \
    120155        -no-fast-install
     
    152187        Source/JavaScriptCore/KeywordLookupGenerator.py \
    153188        Source/JavaScriptCore/parser/Keywords.table \
    154         Source/JavaScriptCore/THANKS
     189        Source/JavaScriptCore/THANKS \
     190        $(llint_nosources) \
     191        $(offlineasm_nosources)
    155192
    156193CLEANFILES += \
     
    158195        Programs/jsc \
    159196        Programs/jsc-@WEBKITGTK_API_MAJOR_VERSION@ \
     197        Programs/LLIntOffsetsExtractor \
    160198        Programs/minidom
    161199
Note: See TracChangeset for help on using the changeset viewer.