CLoop buildfix after r164207
https://bugs.webkit.org/show_bug.cgi?id=128899

Patch by Dániel Bátyai <dbatyai.u-szeged@partner.samsung.com> on 2014-02-17
Reviewed by Csaba Osztrogonác.

* dfg/DFGCommon.h:
(JSC::DFG::shouldShowDisassembly):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164216 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix the CLoop build after r163760
https://bugs.webkit.org/show_bug.cgi?id=128900

Patch by Dániel Bátyai <dbatyai.u-szeged@partner.samsung.com> on 2014-02-17
Reviewed by Csaba Osztrogonác.

* llint/LLIntThunks.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164217 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed EFL gardening

Add test expectations for crashing and failing tests.

* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164219 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Enable DFG_JIT on FreeBSD
https://bugs.webkit.org/show_bug.cgi?id=128898

Patch by Ryan Lortie <desrt@desrt.ca> on 2014-02-17
Reviewed by Csaba Osztrogonác.

* wtf/Platform.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix typos in Tools/efl/jhbuild.modules.
https://bugs.webkit.org/show_bug.cgi?id=128908

Patch by László Langó <llango.u-szeged@partner.samsung.com> on 2014-02-17
Reviewed by Csaba Osztrogonác.

* efl/jhbuild.modules: 's/<deb /<dep /g'

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164221 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] MEDIA_CONTROLS_SCRIPT depends on VIDEO_TRACK
https://bugs.webkit.org/show_bug.cgi?id=128799

Reviewed by Philippe Normand.

MEDIA_CONTROLS_SCRIPT has a dependency on VIDEO_TRACK. So it causes a build break
if building with autotools. cmake system has enabled it as default. So I propose
enabling VIDEO_TRACK as well.

* Source/autotools/SetupWebKitFeatures.m4:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164222 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[MediaControls][iOS] Make mediacontrols match the system inline controls
https://bugs.webkit.org/show_bug.cgi?id=128833

Reviewed by Eric Carlson.

Move items slightly, fix button sizes, font sizes, and colors to match the
inline controls from MoviePlayer.framework.

* Modules/mediacontrols/mediaControlsiOS.css:
(audio::-webkit-media-controls-panel):
(audio::-webkit-media-controls-fullscreen-button):
(audio::-webkit-media-controls-play-button):
(audio::-webkit-media-controls-play-button.paused):
(audio::-webkit-media-controls-timeline):
(audio::-webkit-media-controls-timeline::-webkit-slider-thumb):
(audio::-webkit-media-controls-time-remaining-display):
* Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.configureInlineControls): Do not add the status text.
(ControllerIOS.prototype.updateTime): Call updateProgress().
(ControllerIOS.prototype.progressFillStyle): Draw a slightly different color.
(ControllerIOS.prototype.updateProgress): Draw white to the left of the currentTime.
(ControllerIOS.prototype.formatTime): Single leading zero in the time display fields.
(ControllerIOS.prototype.handleTimelineChange): Call updateProgress().


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164223 268f45cc-cd09-0410-ab3c-d52691b4dbfc
CounterContentData::counter() and ImageContentData::image() should return references
<http://webkit.org/b/128671>

Reviewed by Darin Adler.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::contentToCSSValue):
- Update to use references.  Remove useless ASSERTs.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::loadPendingImages):
- Update to use references.  StyleResolver::loadPendingImage()
  will be changed to take a reference in the near future.

* rendering/RenderElement.cpp:
(WebCore::RenderElement::createFor):
- Update to use references.  The auto keyword wanted to
  instantiate a StyleImage instead a reference, so it was
  replaced.

* rendering/style/ContentData.h:
(WebCore::ImageContentData::ImageContentData): Add ASSERT that
m_image is not NULL.
(WebCore::ImageContentData::image): Return a reference.  Remove
useless overload with identical name.
(WebCore::ImageContentData::cloneInternal): Simplify by using
implicit PassRefPtr constructor.
(WebCore::operator==): Remove unneeded deref operators.
(WebCore::CounterContentData::counter): Return a reference.
(WebCore::CounterContentData::cloneInternal): Remove unneeded
deref operator.
(WebCore::operator==): Remove unneeded deref operators.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164224 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Try to fix iOS Debug builds without breaking Release builds.

* WebProcess/WebPage/PageBanner.cpp:
* WebProcess/WebPage/PageBanner.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164225 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, make this test pass without DFG. It was assuming that you always have DFG
and that it would always tier-up to the DFG - both wrong assumptions.

* tests/stress/tricky-array-bounds-checks.js:
(foo):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164226 268f45cc-cd09-0410-ab3c-d52691b4dbfc
DataCue.data should be a copy of the input ArrayBuffer, not a pointer
https://bugs.webkit.org/show_bug.cgi?id=128886

Reviewed by Eric Carlson.

Source/WebCore:

No new tests, just updated existing track-datacue.html test.

* html/track/DataCue.cpp:
(WebCore::DataCue::DataCue): Add ExceptionCode and pass through to setData().
(WebCore::DataCue::data): Return a copy of m_data instead of a pointer.
(WebCore::DataCue::setData): Create a copy of the input data, or throw an exception if it's null.
* html/track/DataCue.h: Add ExceptionCode parameters to constructor and data setter.
* html/track/DataCue.idl: Same.

LayoutTests:

* media/track/track-datacue-expected.txt:
* media/track/track-datacue.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
FTL OSR exit shouldn't make X86-specific assumptions
https://bugs.webkit.org/show_bug.cgi?id=128890

Reviewed by Mark Hahnenberg.

Mostly this is about not using push/pop, but instead using the more abstract pushToSave() and popToRestore() while reflecting on the stack alignment.

* assembler/MacroAssembler.h:
(JSC::MacroAssembler::pushToSaveImmediateWithoutTouchingRegisters):
(JSC::MacroAssembler::pushToSaveByteOffset):
* assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::pushToSaveImmediateWithoutTouchingRegisters):
(JSC::MacroAssemblerARM64::pushToSaveByteOffset):
* ftl/FTLExitThunkGenerator.cpp:
(JSC::FTL::ExitThunkGenerator::emitThunk):
* ftl/FTLOSRExitCompiler.cpp:
(JSC::FTL::compileStub):
* ftl/FTLThunks.cpp:
(JSC::FTL::osrExitGenerationThunkGenerator):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164228 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move back primary header includes next to config.h
https://bugs.webkit.org/show_bug.cgi?id=128912

Reviewed by Alexey Proskuryakov.

* dfg/DFGAbstractHeap.cpp:
* dfg/DFGAbstractValue.cpp:
* dfg/DFGArgumentsSimplificationPhase.cpp:
* dfg/DFGArithMode.cpp:
* dfg/DFGArrayMode.cpp:
* dfg/DFGAtTailAbstractState.cpp:
* dfg/DFGAvailability.cpp:
* dfg/DFGBackwardsPropagationPhase.cpp:
* dfg/DFGBasicBlock.cpp:
* dfg/DFGBinarySwitch.cpp:
* dfg/DFGBlockInsertionSet.cpp:
* dfg/DFGByteCodeParser.cpp:
* dfg/DFGCFAPhase.cpp:
* dfg/DFGCFGSimplificationPhase.cpp:
* dfg/DFGCPSRethreadingPhase.cpp:
* dfg/DFGCSEPhase.cpp:
* dfg/DFGCapabilities.cpp:
* dfg/DFGClobberSet.cpp:
* dfg/DFGClobberize.cpp:
* dfg/DFGCommon.cpp:
* dfg/DFGCommonData.cpp:
* dfg/DFGCompilationKey.cpp:
* dfg/DFGCompilationMode.cpp:
* dfg/DFGConstantFoldingPhase.cpp:
* dfg/DFGCriticalEdgeBreakingPhase.cpp:
* dfg/DFGDCEPhase.cpp:
* dfg/DFGDesiredIdentifiers.cpp:
* dfg/DFGDesiredStructureChains.cpp:
* dfg/DFGDesiredTransitions.cpp:
* dfg/DFGDesiredWatchpoints.cpp:
* dfg/DFGDesiredWeakReferences.cpp:
* dfg/DFGDesiredWriteBarriers.cpp:
* dfg/DFGDisassembler.cpp:
* dfg/DFGDominators.cpp:
* dfg/DFGEdge.cpp:
* dfg/DFGFailedFinalizer.cpp:
* dfg/DFGFinalizer.cpp:
* dfg/DFGFixupPhase.cpp:
* dfg/DFGFlushFormat.cpp:
* dfg/DFGFlushLivenessAnalysisPhase.cpp:
* dfg/DFGFlushedAt.cpp:
* dfg/DFGGraph.cpp:
* dfg/DFGGraphSafepoint.cpp:
* dfg/DFGInPlaceAbstractState.cpp:
* dfg/DFGIntegerCheckCombiningPhase.cpp:
* dfg/DFGInvalidationPointInjectionPhase.cpp:
* dfg/DFGJITCode.cpp:
* dfg/DFGJITCompiler.cpp:
* dfg/DFGJITFinalizer.cpp:
* dfg/DFGJumpReplacement.cpp:
* dfg/DFGLICMPhase.cpp:
* dfg/DFGLazyJSValue.cpp:
* dfg/DFGLivenessAnalysisPhase.cpp:
* dfg/DFGLongLivedState.cpp:
* dfg/DFGLoopPreHeaderCreationPhase.cpp:
* dfg/DFGMinifiedNode.cpp:
* dfg/DFGNaturalLoops.cpp:
* dfg/DFGNode.cpp:
* dfg/DFGNodeFlags.cpp:
* dfg/DFGOSRAvailabilityAnalysisPhase.cpp:
* dfg/DFGOSREntry.cpp:
* dfg/DFGOSREntrypointCreationPhase.cpp:
* dfg/DFGOSRExit.cpp:
* dfg/DFGOSRExitBase.cpp:
* dfg/DFGOSRExitCompiler.cpp:
* dfg/DFGOSRExitCompiler32_64.cpp:
* dfg/DFGOSRExitCompiler64.cpp:
* dfg/DFGOSRExitCompilerCommon.cpp:
* dfg/DFGOSRExitJumpPlaceholder.cpp:
* dfg/DFGOSRExitPreparation.cpp:
* dfg/DFGPhase.cpp:
* dfg/DFGPlan.cpp:
* dfg/DFGPredictionInjectionPhase.cpp:
* dfg/DFGPredictionPropagationPhase.cpp:
* dfg/DFGResurrectionForValidationPhase.cpp:
* dfg/DFGSSAConversionPhase.cpp:
* dfg/DFGSSALoweringPhase.cpp:
* dfg/DFGSafepoint.cpp:
* dfg/DFGSpeculativeJIT.cpp:
* dfg/DFGSpeculativeJIT32_64.cpp:
* dfg/DFGSpeculativeJIT64.cpp:
* dfg/DFGStackLayoutPhase.cpp:
* dfg/DFGStoreBarrierElisionPhase.cpp:
* dfg/DFGStrengthReductionPhase.cpp:
* dfg/DFGThreadData.cpp:
* dfg/DFGThunks.cpp:
* dfg/DFGTierUpCheckInjectionPhase.cpp:
* dfg/DFGToFTLDeferredCompilationCallback.cpp:
* dfg/DFGToFTLForOSREntryDeferredCompilationCallback.cpp:
* dfg/DFGTypeCheckHoistingPhase.cpp:
* dfg/DFGUnificationPhase.cpp:
* dfg/DFGUseKind.cpp:
* dfg/DFGValidate.cpp:
* dfg/DFGValueSource.cpp:
* dfg/DFGVariableAccessDataDump.cpp:
* dfg/DFGVariableEvent.cpp:
* dfg/DFGVariableEventStream.cpp:
* dfg/DFGVirtualRegisterAllocationPhase.cpp:
* dfg/DFGWatchpointCollectionPhase.cpp:
* dfg/DFGWorklist.cpp:
* heap/JITStubRoutineSet.cpp:
* jit/GCAwareJITStubRoutine.cpp:
* jit/JIT.cpp:
* jit/JITDisassembler.cpp:
* jit/JITOperations.cpp:
* jit/JITStubRoutine.cpp:
* jit/JITStubs.cpp:
* jit/TempRegisterSet.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164229 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Turn the history client into a fancy API::HistoryClient abstract base class
https://bugs.webkit.org/show_bug.cgi?id=128917

Reviewed by Andreas Kling.

* UIProcess/API/APIHistoryClient.h: Renamed from Source/WebKit2/UIProcess/WebHistoryClient.h.
(API::HistoryClient::~HistoryClient):
(API::HistoryClient::didNavigateWithNavigationData):
(API::HistoryClient::didPerformClientRedirect):
(API::HistoryClient::didPerformServerRedirect):
(API::HistoryClient::didUpdateHistoryTitle):
(API::HistoryClient::populateVisitedLinks):
(API::HistoryClient::shouldTrackVisitedLinks):
* UIProcess/API/C/WKContext.cpp:
(WKContextSetHistoryClient):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::setHistoryClient):
(WebKit::WebContext::createNewWebProcess):
(WebKit::WebContext::populateVisitedLinks):
* UIProcess/WebContext.h:
(WebKit::WebContext::historyClient):
* UIProcess/WebHistoryClient.cpp: Removed.
* UIProcess/WebPageProxy.h:
* UIProcess/WebProcessProxy.cpp:
* WebKit2.xcodeproj/project.pbxproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164230 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions] The box decorations of an element overflowing a region should be clipped at the border box, not the content box
https://bugs.webkit.org/show_bug.cgi?id=128815

Reviewed by Andrei Bucur.

Source/WebCore:

Elements flowed into a region should not be painted past the region's content box
if they continue to flow into another region in that direction.
If they do not continue into another region in that direction, they should be
painted all the way to the region's border box.
Regions with overflow:hidden will apply clip at the border box, not the content box.

Tests: fast/regions/box-decorations-over-region-padding-fragmented.html
       fast/regions/box-decorations-over-region-padding-horiz-bt.html
       fast/regions/box-decorations-over-region-padding-vert-lr.html
       fast/regions/box-decorations-over-region-padding-vert-rl.html
       fast/regions/box-decorations-over-region-padding.html

* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::flowThreadPortionRectForClipping):
* rendering/RenderNamedFlowFragment.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::rectFlowPortionForBox):

LayoutTests:

Added tests for the painting of the borders of elements flowed into regions
over the region's padding area, for regions with overflow:hidden.
Tests were added for all writing modes.

* fast/regions/box-decorations-over-region-padding-expected.html: Added.
* fast/regions/box-decorations-over-region-padding-fragmented-expected.html: Added.
* fast/regions/box-decorations-over-region-padding-fragmented.html: Added.
* fast/regions/box-decorations-over-region-padding-horiz-bt-expected.html: Added.
* fast/regions/box-decorations-over-region-padding-horiz-bt.html: Added.
* fast/regions/box-decorations-over-region-padding-vert-lr-expected.html: Added.
* fast/regions/box-decorations-over-region-padding-vert-lr.html: Added.
* fast/regions/box-decorations-over-region-padding-vert-rl-expected.html: Added.
* fast/regions/box-decorations-over-region-padding-vert-rl.html: Added.
* fast/regions/box-decorations-over-region-padding.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164231 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Graphics buffer issue with clip-path and fixed positioned element
https://bugs.webkit.org/show_bug.cgi?id=126262

Source/WebCore:

Reviewed by Tim Horton.

If an element has a clip-path, backgroundIsKnownToBeOpaqueInRect() needs
to return false so that we don't try to make opaque compositing layers.

Test: compositing/contents-opaque/opaque-with-clip-path.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::backgroundIsKnownToBeOpaqueInRect):

LayoutTests:

Reviewed by Tim Horton.

* compositing/contents-opaque/opaque-with-clip-path-expected.html: Added.
* compositing/contents-opaque/opaque-with-clip-path.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164232 268f45cc-cd09-0410-ab3c-d52691b4dbfc
RegisterSet::calleeSaveRegisters() should know about ARM64
https://bugs.webkit.org/show_bug.cgi?id=128918

Reviewed by Mark Hahnenberg.

* jit/RegisterSet.cpp:
(JSC::RegisterSet::calleeSaveRegisters):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164233 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions] Make regions unsplittable
https://bugs.webkit.org/show_bug.cgi?id=128811

Reviewed by David Hyatt.

Source/WebCore:

At the moment, nested regions are not properly fragmented across regions. For the moment,
the regions will become unsplittable elements to avoid slicing. At a later time a proper
fragmentation algorithm should be written, also taking into consideration pagination strut.

Test: fast/regions/unsplittable-nested-region.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::isUnsplittableForPagination):

LayoutTests:

Added test for checking that nested regions are unsplittable.

* fast/regions/unsplittable-nested-region-expected.html: Added.
* fast/regions/unsplittable-nested-region.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164234 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebKitGTK+ should stop calling functions to set the view source mode
https://bugs.webkit.org/show_bug.cgi?id=128919

Reviewed by Carlos Garcia Campos.

This is a first step towards getting rid of the view source mode from WebCore.
View source shouldn't be a mode on the web page and can be implemented in other ways by
embedding apps. Furthermore, the inspector has an excellent view source mode.

Source/WebKit/gtk:

* webkit/webkitwebview.cpp:
(webkit_web_view_set_view_source_mode):
(webkit_web_view_get_view_source_mode):
Turn these into no-ops.

Source/WebKit2:

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_set_view_mode):
(webkit_web_view_get_view_mode):
Turn these into no-ops.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@164235 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: CSS selectors containing a color name shouldn't be considered for color editing
https://bugs.webkit.org/show_bug.cgi?id=128909

Reviewed by Joseph Pecoraro.

Disregard any text that might be contained within a CSS selector.

* UserInterface/CodeMirrorAdditions.js:


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