Prevent builtin js named with C++ reserved words from breaking the build
https://bugs.webkit.org/show_bug.cgi?id=129017

Reviewed by Sam Weinig.

Simple change to a couple of macros to make sure we don't create functions
named using reserved words.

* builtins/BuiltinExecutables.cpp:
* builtins/BuiltinNames.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164346 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add fast mapping from StringImpl to JSString
https://bugs.webkit.org/show_bug.cgi?id=128625

Reviewed by Geoff Garen & Andreas Kling.

Source/JavaScriptCore: 

* runtime/JSString.cpp:
(JSC::JSString::WeakOwner::finalize):
    - once the JSString weakly owned by a StringImpl becomed unreachable remove the WeakImpl.
* runtime/JSString.h:
(JSC::jsStringWithWeakOwner):
    - create a JSString wrapping a StringImpl, and weakly caches the JSString on the StringImpl.
* runtime/VM.cpp:
(JSC::VM::VM):
    - initialize jsStringWeakOwner.
(JSC::VM::createLeakedForMainThread):
    - initialize jsStringWeakOwner - the main thread gets to use the weak pointer
      on StringImpl to cache a JSString wrapper.
* runtime/VM.h:
    - renamed createLeaked -> createLeakedForMainThread to make it clear this
      should only be used to cretae the main thread VM.

Source/WebCore: 

Removed JSStringCache from WebCore; call JSC::jsStringWithWeakOwner instead.

* bindings/js/DOMWrapperWorld.cpp:
(WebCore::DOMWrapperWorld::clearWrappers):
    - removed JSStringCache.
* bindings/js/DOMWrapperWorld.h:
    - removed JSStringCache.
* bindings/js/JSDOMBinding.h:
(WebCore::jsStringWithCache):
    - call jsStringWithWeakOwner insead of using JSStringCache.
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::commonVM):
    - renamed createLeaked -> createLeakedForMainThread.
* bindings/scripts/StaticString.pm:
(GenerateStrings):
    - StringImpl has an additional field.

Source/WTF: 

Add weak pointer from StringImpl to JSString.

* wtf/text/StringImpl.cpp:
(WTF::StringImpl::~StringImpl):
    - ASSERT m_weakJSString is null.
* wtf/text/StringImpl.h:
(WTF::StringImpl::StringImpl):
    - initialize m_weakJSString.
(WTF::StringImpl::weakJSString):
(WTF::StringImpl::setWeakJSString):
    - added acessors for m_weakJSString.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164347 268f45cc-cd09-0410-ab3c-d52691b4dbfc
The shell scripts in the Xcode build system should tell you when they failed
https://bugs.webkit.org/show_bug.cgi?id=129018

Reviewed by Mark Rowe.

* JavaScriptCore.xcodeproj/project.pbxproj:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164348 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Clean up WKContentView initialization
https://bugs.webkit.org/show_bug.cgi?id=129016

Reviewed by Benjamin Poulain.

WKContentView had too many initializers and duplicated init
code. Clean up by removing all but one initializer and and
doing all the setup in it.

* UIProcess/API/ios/WKContentView.h:
* UIProcess/API/ios/WKContentView.mm:
* UIProcess/API/ios/WKViewIOS.mm:
(-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Don't call LLVMInitializeNativeTarget() because it can be all messed up if you cross-compile LLVM
https://bugs.webkit.org/show_bug.cgi?id=129020

Reviewed by Dan Bernstein.
        
LLVMInitializeNativeTarget() is this super special inline function in llvm-c/Target.h that
depends on some #define's that come from some really weird magic in autoconf/configure.ac.
That magic fails miserably for cross-compiles. So, we need to manually initialize the things
that InitializeNativeTarget initializes.

* llvm/library/LLVMExports.cpp:
(initializeAndGetJSCLLVMAPI):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164350 268f45cc-cd09-0410-ab3c-d52691b4dbfc
More Windows test gardening to get the bots green.

* platform/win/TestExpectations: Mark some flaky tests, and some passes to reduce report output.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164351 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, roll out http://trac.webkit.org/changeset/164348 because it broke some
builds.

* JavaScriptCore.xcodeproj/project.pbxproj:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164352 268f45cc-cd09-0410-ab3c-d52691b4dbfc