Lines Matching refs:base
11 #include "src/base/atomicops.h"
12 #include "src/base/build_config.h"
13 #include "src/base/iterator.h"
14 #include "src/base/macros.h"
15 #include "src/base/platform/platform.h"
16 #include "src/base/small-vector.h"
17 #include "src/base/vector.h"
43 #include "src/base/platform/wrappers.h"
58 base::AddressRegion DisjointAllocationPool::Merge(
59 base::AddressRegion new_region) {
69 base::AddressRegion merged_region{new_region.begin(),
99 base::AddressRegion merged_region{below->begin(),
113 base::AddressRegion DisjointAllocationPool::Allocate(size_t size) {
118 base::AddressRegion DisjointAllocationPool::AllocateInRegion(
119 size_t size, base::AddressRegion region) {
127 base::AddressRegion overlap = it->GetOverlap(region);
129 base::AddressRegion ret{overlap.begin(), size};
130 base::AddressRegion old = *it;
179 std::initializer_list<base::Vector<const byte>> vectors) {
198 Address base = instruction_start();
203 RegisterHandlerData(base, size, protected_instruction_data.size(),
239 base::VectorOf(&name_buffer[prefix_len], kMaxSigLength), sig);
249 SNPrintF(base::VectorOf(&name_buffer.front(), name_buffer.size()),
265 WasmName name = base::VectorOf(fn_name);
490 void WasmCode::DecrementRefCount(base::Vector<WasmCode* const> code_vec) {
527 GetWasmCodeManager()->FreeNativeModule(base::VectorOf(owned_code_space_),
551 base::SmallVector<base::AddressRegion, 1> SplitRangeByReservationsIfNeeded(
552 base::AddressRegion range,
556 base::SmallVector<base::AddressRegion, 1> split_ranges;
559 for (auto& vmem : base::Reversed(owned_code_space)) {
623 constexpr auto format = base::StaticCharVector(
628 base::EmbeddedVector<char, kMaxMessageLength + 1> message;
650 std::set<base::AddressRegion, base::AddressRegion::StartAddressLess>&
652 base::AddressRegion new_region, size_t& new_writable_memory)
658 [](size_t old, base::AddressRegion region) {
689 const std::set<base::AddressRegion, base::AddressRegion::StartAddressLess>&
691 const base::AddressRegion new_region_;
705 base::Vector<byte> WasmCodeAllocator::AllocateForCode(
710 base::Vector<byte> WasmCodeAllocator::AllocateForCodeInRegion(
711 NativeModule* native_module, size_t size, base::AddressRegion region) {
715 base::AddressRegion code_space =
733 constexpr auto format = base::StaticCharVector(
737 base::EmbeddedVector<char, kMaxMessageLength + 1> message;
743 base::AddressRegion new_region = new_mem.region();
770 for (base::AddressRegion split_range : SplitRangeByReservationsIfNeeded(
810 for (base::AddressRegion writable : writable_memory_) {
811 for (base::AddressRegion split_range :
822 void WasmCodeAllocator::MakeWritable(base::AddressRegion region) {
830 DCHECK(base::bits::IsPowerOfTwo(commit_page_size));
833 region = base::AddressRegion(begin, end - begin);
838 void WasmCodeAllocator::FreeCode(base::Vector<WasmCode* const> codes) {
844 freed_regions.Merge(base::AddressRegion{code->instruction_start(),
871 for (base::AddressRegion split_range :
882 void WasmCodeAllocator::InsertIntoWritableRegions(base::AddressRegion region,
893 base::AddressRegion region) {
896 for (base::AddressRegion split_range :
937 base::AddressRegion overlap = it->GetOverlap(region);
953 base::AddressRegion split = {region.begin(),
961 constexpr base::AddressRegion WasmCodeAllocator::kUnrestrictedRegion;
1011 base::RecursiveMutexGuard guard{&allocation_mutex_};
1027 base::AddressRegion single_code_space_region;
1028 base::RecursiveMutexGuard guard(&allocation_mutex_);
1066 base::OwnedVector<byte> reloc_info;
1068 reloc_info = base::OwnedVector<byte>::Of(
1069 base::Vector<byte>{code->relocation_start(), relocation_size});
1073 base::OwnedVector<byte> source_pos =
1074 base::OwnedVector<byte>::NewForOverwrite(source_pos_table->length());
1081 base::Vector<const byte> instructions(
1099 base::RecursiveMutexGuard guard{&allocation_mutex_};
1100 base::Vector<uint8_t> dst_code_bytes =
1110 FindJumpTablesForRegionLocked(base::AddressRegionOf(dst_code_bytes));
1163 base::RecursiveMutexGuard guard(&allocation_mutex_);
1168 base::AddressRegion single_code_space_region = code_space_data_[0].region;
1178 base::AddressRegionOf(lazy_compile_table_->instructions()))));
1193 base::Vector<const byte> protected_instructions_data,
1194 base::Vector<const byte> source_position_table, WasmCode::Kind kind,
1196 base::Vector<byte> code_space;
1199 base::RecursiveMutexGuard guard{&allocation_mutex_};
1202 FindJumpTablesForRegionLocked(base::AddressRegionOf(code_space));
1213 base::Vector<const byte> protected_instructions_data,
1214 base::Vector<const byte> source_position_table, WasmCode::Kind kind,
1216 base::Vector<uint8_t> dst_code_bytes, const JumpTablesRef& jump_tables) {
1217 base::Vector<byte> reloc_info{
1283 base::RecursiveMutexGuard lock(&allocation_mutex_);
1289 base::Vector<std::unique_ptr<WasmCode>> codes) {
1297 base::RecursiveMutexGuard lock(&allocation_mutex_);
1385 base::RecursiveMutexGuard lock(&allocation_mutex_);
1410 std::pair<base::Vector<uint8_t>, NativeModule::JumpTablesRef>
1412 base::RecursiveMutexGuard guard{&allocation_mutex_};
1413 base::Vector<uint8_t> code_space =
1416 FindJumpTablesForRegionLocked(base::AddressRegionOf(code_space));
1421 int index, base::Vector<byte> instructions, int stack_slots,
1425 base::Vector<const byte> protected_instructions_data,
1426 base::Vector<const byte> reloc_info,
1427 base::Vector<const byte> source_position_table, WasmCode::Kind kind,
1439 base::RecursiveMutexGuard lock(&allocation_mutex_);
1442 for (WasmCode* code : base::VectorOf(start, end - start)) {
1449 base::RecursiveMutexGuard lock(&allocation_mutex_);
1460 base::RecursiveMutexGuard guard(&allocation_mutex_);
1467 base::RecursiveMutexGuard guard(&allocation_mutex_);
1472 base::RecursiveMutexGuard guard(&allocation_mutex_);
1487 int jump_table_size, base::AddressRegion region) {
1492 base::Vector<uint8_t> code_space =
1547 base::Vector<uint8_t> jump_tables_space = base::VectorOf(
1579 void NativeModule::AddCodeSpaceLocked(base::AddressRegion region) {
1597 base::Vector<byte> padding =
1681 std::shared_ptr<base::OwnedVector<const uint8_t>> wire_bytes)
1684 base::Vector<const uint8_t> GetCode(WireBytesRef ref) const final {
1690 base::Optional<ModuleWireBytes> GetModuleBytes() const final {
1691 return base::Optional<ModuleWireBytes>(
1696 const std::shared_ptr<base::OwnedVector<const uint8_t>> wire_bytes_;
1700 void NativeModule::SetWireBytes(base::OwnedVector<const uint8_t> wire_bytes) {
1702 std::make_shared<base::OwnedVector<const uint8_t>>(std::move(wire_bytes));
1765 base::RecursiveMutexGuard lock(&allocation_mutex_);
1791 base::AddressRegion code_region) const {
1858 base::RecursiveMutexGuard guard(&allocation_mutex_);
1910 void WasmCodeManager::Commit(base::AddressRegion region) {
1969 void WasmCodeManager::Decommit(base::AddressRegion region) {
1984 void WasmCodeManager::AssignRange(base::AddressRegion region,
1986 base::MutexGuard lock(&native_modules_mutex_);
2218 constexpr auto format = base::StaticCharVector(
2222 base::EmbeddedVector<char, kMaxMessageLength + 1> message;
2246 base::MutexGuard lock(&native_modules_mutex_);
2291 base::Vector<WasmCompilationResult> results) {
2304 int current_value = base::Relaxed_Load(slots);
2308 base::Relaxed_Store(slots, result.feedback_vector_slots);
2311 base::Vector<byte> code_space;
2315 base::RecursiveMutexGuard guard{&allocation_mutex_};
2319 FindJumpTablesForRegionLocked(base::AddressRegionOf(code_space));
2334 base::Vector<byte> this_code_space = code_space.SubVector(0, code_size);
2353 base::RecursiveMutexGuard lock(&allocation_mutex_);
2358 base::RecursiveMutexGuard lock(&allocation_mutex_);
2373 base::RecursiveMutexGuard lock(&allocation_mutex_);
2393 base::RecursiveMutexGuard guard(&allocation_mutex_);
2431 void NativeModule::FreeCode(base::Vector<WasmCode* const> codes) {
2432 base::RecursiveMutexGuard guard(&allocation_mutex_);
2449 base::RecursiveMutexGuard guard{&allocation_mutex_};
2454 base::RecursiveMutexGuard guard(&allocation_mutex_);
2459 base::RecursiveMutexGuard guard(&allocation_mutex_);
2465 base::Vector<VirtualMemory> owned_code_space, size_t committed_size) {
2466 base::MutexGuard lock(&native_modules_mutex_);
2495 base::MutexGuard lock(&native_modules_mutex_);
2526 WasmCode::DecrementRefCount(base::VectorOf(code_ptrs_));