Backed out 2 changesets (bug 1864828) for causing build bustages on TestJemalloc.cpp. CLOSED TREE

Backed out changeset c1b4a8307702 (bug 1864828)
Backed out changeset ba88f119b1fc (bug 1864828)
This commit is contained in:
Iulian Moraru 2023-11-30 07:19:04 +02:00
Родитель 6cc014163b
Коммит d6a3f6a6bd
7 изменённых файлов: 37 добавлений и 71 удалений

Просмотреть файл

@ -47,6 +47,27 @@ Order CompareAddr(T* aAddr1, T* aAddr2) {
return CompareInt(uintptr_t(aAddr1), uintptr_t(aAddr2));
}
// User-defined literals to make constants more legible
constexpr size_t operator"" _KiB(unsigned long long int aNum) {
return size_t(aNum) * 1024;
}
constexpr size_t operator"" _KiB(long double aNum) {
return size_t(aNum * 1024);
}
constexpr size_t operator"" _MiB(unsigned long long int aNum) {
return size_t(aNum) * 1024_KiB;
}
constexpr size_t operator"" _MiB(long double aNum) {
return size_t(aNum * 1024_KiB);
}
constexpr double operator""_percent(long double aPercent) {
return double(aPercent) / 100;
}
// Helper for (fast) comparison of fractions without involving divisions or
// floats.
class Fraction {

Просмотреть файл

@ -150,7 +150,6 @@
#include "mozilla/DoublyLinkedList.h"
#include "mozilla/HelperMacros.h"
#include "mozilla/Likely.h"
#include "mozilla/Literals.h"
#include "mozilla/MathAlgorithms.h"
#include "mozilla/RandomNum.h"
// Note: MozTaggedAnonymousMmap() could call an LD_PRELOADed mmap

Просмотреть файл

@ -1,37 +0,0 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/* Helpers for units on integer literals. */
#ifndef mozilla_Literals_h
#define mozilla_Literals_h
// User-defined literals to make constants more legible. Use them by
// appending them to literals such as:
//
// size_t page_size = 4_KiB;
//
constexpr size_t operator"" _KiB(unsigned long long int aNum) {
return size_t(aNum) * 1024;
}
constexpr size_t operator"" _KiB(long double aNum) {
return size_t(aNum * 1024);
}
constexpr size_t operator"" _MiB(unsigned long long int aNum) {
return size_t(aNum) * 1024_KiB;
}
constexpr size_t operator"" _MiB(long double aNum) {
return size_t(aNum * 1024_KiB);
}
constexpr double operator""_percent(long double aPercent) {
return double(aPercent) / 100;
}
#endif /* ! mozilla_Literals_h */

Просмотреть файл

@ -63,7 +63,6 @@ EXPORTS.mozilla = [
"Latin1.h",
"Likely.h",
"LinkedList.h",
"Literals.h",
"MacroArgs.h",
"MacroForEach.h",
"MathAlgorithms.h",

Просмотреть файл

@ -11054,11 +11054,6 @@
value: @IS_EARLY_BETA_OR_EARLIER@
mirror: always
- name: memory.phc.min_ram_mb
type: uint32_t
value: 8000
mirror: always
#---------------------------------------------------------------------------
# Prefs starting with "midi."
#---------------------------------------------------------------------------

Просмотреть файл

@ -2011,10 +2011,6 @@ phc:
description: Whether to enable PHC
type: boolean
setPref: memory.phc.enabled
phcMinRamMB:
description: The minimum amount of RAM required to enable PHC
type: int
setPref: memory.phc.min_ram_mb
mailto:
description: Prefs to control aspects of the mailto handler

Просмотреть файл

@ -7,7 +7,6 @@
#include "PHCManager.h"
#include "PHC.h"
#include "mozilla/Literals.h"
#include "mozilla/Preferences.h"
#include "mozilla/StaticPrefs_memory.h"
#include "mozilla/Telemetry.h"
@ -17,37 +16,31 @@ namespace mozilla {
using namespace phc;
static const char kPHCEnabledPref[] = "memory.phc.enabled";
static const char kPHCMinRamMBPref[] = "memory.phc.min_ram_mb";
static const char kPHCPref[] = "memory.phc.enabled";
static void UpdatePHCState() {
size_t mem_size = PR_GetPhysicalMemorySize() / (1_MiB);
size_t min_mem_size = StaticPrefs::memory_phc_min_ram_mb();
static PHCState GetPHCStateFromPref() {
return StaticPrefs::memory_phc_enabled() ? Enabled : OnlyFree;
}
static void PrefChangeCallback(const char* aPrefName, void* aNull) {
MOZ_ASSERT(0 == strcmp(aPrefName, kPHCPref));
SetPHCState(GetPHCStateFromPref());
}
void InitPHCState() {
size_t memSize = PR_GetPhysicalMemorySize();
// Only enable PHC if there are at least 8GB of ram. Note that we use
// 1000 bytes per kilobyte rather than 1024. Some 8GB machines will have
// slightly lower actual RAM available after some hardware devices
// reserve some.
if (StaticPrefs::memory_phc_enabled() && mem_size >= min_mem_size) {
SetPHCState(Enabled);
} else {
SetPHCState(OnlyFree);
if (memSize >= size_t(8'000'000'000llu)) {
SetPHCState(GetPHCStateFromPref());
Preferences::RegisterCallback(PrefChangeCallback, kPHCPref);
}
}
static void PrefChangeCallback(const char* aPrefName, void* aNull) {
MOZ_ASSERT((0 == strcmp(aPrefName, kPHCEnabledPref)) ||
(0 == strcmp(aPrefName, kPHCMinRamMBPref)));
UpdatePHCState();
}
void InitPHCState() {
Preferences::RegisterCallback(PrefChangeCallback, kPHCEnabledPref);
Preferences::RegisterCallback(PrefChangeCallback, kPHCMinRamMBPref);
UpdatePHCState();
}
void ReportPHCTelemetry() {
MemoryUsage usage;
PHCMemoryUsage(usage);