v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
flush-instruction-cache.cc
Go to the documentation of this file.
1
// Copyright 2019 the V8 project authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
#include "
src/codegen/flush-instruction-cache.h
"
6
7
#include "
src/base/platform/mutex.h
"
8
#include "
src/codegen/cpu-features.h
"
9
#include "
src/execution/simulator.h
"
10
11
namespace
v8
{
12
namespace
internal
{
13
14
void
FlushInstructionCache
(
void
*
start
,
size_t
size) {
15
if
(size == 0)
return
;
16
if
(
v8_flags
.jitless)
return
;
17
18
TRACE_EVENT2
(
TRACE_DISABLED_BY_DEFAULT
(
"v8.compile"
),
"FlushInstructionCache"
,
19
"start"
,
start
,
"size"
, size);
20
21
#if defined(USE_SIMULATOR)
22
base::MutexGuard
lock_guard(Simulator::i_cache_mutex());
23
Simulator::FlushICache(Simulator::i_cache(),
start
, size);
24
#else
25
CpuFeatures::FlushICache
(
start
, size);
26
#endif
// USE_SIMULATOR
27
}
28
29
}
// namespace internal
30
}
// namespace v8
v8::base::LockGuard
Definition
mutex.h:192
v8::internal::CpuFeatures::FlushICache
static void FlushICache(void *start, size_t size)
Definition
cpu-riscv.cc:15
cpu-features.h
start
int start
Definition
debug-coverage.cc:595
flush-instruction-cache.h
mutex.h
v8::internal::FlushInstructionCache
void FlushInstructionCache(void *start, size_t size)
Definition
flush-instruction-cache.cc:14
v8::internal::internal
internal
Definition
wasm-objects-inl.h:458
v8::internal::v8_flags
V8_EXPORT_PRIVATE FlagValues v8_flags
v8
Definition
api-arguments-inl.h:19
simulator.h
TRACE_EVENT2
#define TRACE_EVENT2(category_group, name, arg1_name, arg1_val, arg2_name, arg2_val)
Definition
trace-event-no-perfetto.h:43
TRACE_DISABLED_BY_DEFAULT
#define TRACE_DISABLED_BY_DEFAULT(name)
Definition
trace-event-no-perfetto.h:25
src
codegen
flush-instruction-cache.cc
Generated on Sun Apr 6 2025 21:08:50 for v8 by
1.12.0