summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/dfg/DFGJITFinalizer.cpp
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2016-04-10 09:28:39 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2016-04-10 09:28:39 +0000
commit32761a6cee1d0dee366b885b7b9c777e67885688 (patch)
treed6bec92bebfb216f4126356e55518842c2f476a1 /Source/JavaScriptCore/dfg/DFGJITFinalizer.cpp
parenta4e969f4965059196ca948db781e52f7cfebf19e (diff)
downloadWebKitGtk-tarball-32761a6cee1d0dee366b885b7b9c777e67885688.tar.gz
webkitgtk-2.4.11webkitgtk-2.4.11
Diffstat (limited to 'Source/JavaScriptCore/dfg/DFGJITFinalizer.cpp')
-rw-r--r--Source/JavaScriptCore/dfg/DFGJITFinalizer.cpp32
1 files changed, 8 insertions, 24 deletions
diff --git a/Source/JavaScriptCore/dfg/DFGJITFinalizer.cpp b/Source/JavaScriptCore/dfg/DFGJITFinalizer.cpp
index 1132fc9b7..b7ea594c6 100644
--- a/Source/JavaScriptCore/dfg/DFGJITFinalizer.cpp
+++ b/Source/JavaScriptCore/dfg/DFGJITFinalizer.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2013, 2015 Apple Inc. All rights reserved.
+ * Copyright (C) 2013 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -29,18 +29,15 @@
#if ENABLE(DFG_JIT)
#include "CodeBlock.h"
-#include "CodeBlockWithJITType.h"
#include "DFGCommon.h"
#include "DFGPlan.h"
-#include "JSCInlines.h"
-#include "ProfilerDatabase.h"
namespace JSC { namespace DFG {
-JITFinalizer::JITFinalizer(Plan& plan, PassRefPtr<JITCode> jitCode, std::unique_ptr<LinkBuffer> linkBuffer, MacroAssemblerCodePtr withArityCheck)
+JITFinalizer::JITFinalizer(Plan& plan, PassRefPtr<JITCode> jitCode, PassOwnPtr<LinkBuffer> linkBuffer, MacroAssemblerCodePtr withArityCheck)
: Finalizer(plan)
, m_jitCode(jitCode)
- , m_linkBuffer(WTFMove(linkBuffer))
+ , m_linkBuffer(linkBuffer)
, m_withArityCheck(withArityCheck)
{
}
@@ -49,18 +46,10 @@ JITFinalizer::~JITFinalizer()
{
}
-size_t JITFinalizer::codeSize()
-{
- return m_linkBuffer->size();
-}
-
bool JITFinalizer::finalize()
{
- m_jitCode->initializeCodeRef(
- FINALIZE_DFG_CODE(*m_linkBuffer, ("DFG JIT code for %s", toCString(CodeBlockWithJITType(m_plan.codeBlock, JITCode::DFGJIT)).data())),
- MacroAssemblerCodePtr());
-
- m_plan.codeBlock->setJITCode(m_jitCode);
+ m_jitCode->initializeCodeRef(m_linkBuffer->finalizeCodeWithoutDisassembly());
+ m_plan.codeBlock->setJITCode(m_jitCode, MacroAssemblerCodePtr());
finalizeCommon();
@@ -70,10 +59,8 @@ bool JITFinalizer::finalize()
bool JITFinalizer::finalizeFunction()
{
RELEASE_ASSERT(!m_withArityCheck.isEmptyValue());
- m_jitCode->initializeCodeRef(
- FINALIZE_DFG_CODE(*m_linkBuffer, ("DFG JIT code for %s", toCString(CodeBlockWithJITType(m_plan.codeBlock, JITCode::DFGJIT)).data())),
- m_withArityCheck);
- m_plan.codeBlock->setJITCode(m_jitCode);
+ m_jitCode->initializeCodeRef(m_linkBuffer->finalizeCodeWithoutDisassembly());
+ m_plan.codeBlock->setJITCode(m_jitCode, m_withArityCheck);
finalizeCommon();
@@ -83,14 +70,11 @@ bool JITFinalizer::finalizeFunction()
void JITFinalizer::finalizeCommon()
{
#if ENABLE(FTL_JIT)
- m_jitCode->optimizeAfterWarmUp(m_plan.codeBlock);
+ m_jitCode->optimizeAfterWarmUp(m_plan.codeBlock.get());
#endif // ENABLE(FTL_JIT)
if (m_plan.compilation)
m_plan.vm.m_perBytecodeProfiler->addCompilation(m_plan.compilation);
-
- if (!m_plan.willTryToTierUp)
- m_plan.codeBlock->baselineVersion()->m_didFailFTLCompilation = true;
}
} } // namespace JSC::DFG