Merge pull request #3410 from jroweboy/clang-format-target

Clang format as a build target
This commit is contained in:
James Rowe 2018-03-09 11:10:27 -07:00 committed by GitHub
commit 33a0e87ac2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
152 changed files with 1024 additions and 557 deletions

View File

@ -6,8 +6,12 @@ matrix:
dist: trusty
addons:
apt:
sources:
- sourceline: 'deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-6.0 main'
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
- sourceline: 'deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu trusty main'
packages:
- clang-format-3.9
- clang-format-6.0
script: "./.travis/clang-format/script.sh"
- os: linux
env: NAME="linux build"

View File

@ -7,7 +7,7 @@ if grep -nr '\s$' src *.yml *.txt *.md Doxyfile .gitignore .gitmodules .travis*
fi
# Default clang-format points to default 3.5 version one
CLANG_FORMAT=clang-format-3.9
CLANG_FORMAT=clang-format-6.0
$CLANG_FORMAT --version
if [ "$TRAVIS_EVENT_TYPE" = "pull_request" ]; then

View File

@ -3,15 +3,18 @@ cmake_minimum_required(VERSION 3.8)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/externals/cmake-modules")
include(DownloadExternals)
include(CMakeDependentOption)
project(citra)
# Set bundled sdl2/qt as dependent options.
# OFF by default, but if ENABLE_SDL2 and MSVC are true then ON
option(ENABLE_SDL2 "Enable the SDL2 frontend" ON)
option(CITRA_USE_BUNDLED_SDL2 "Download bundled SDL2 binaries" OFF)
CMAKE_DEPENDENT_OPTION(CITRA_USE_BUNDLED_SDL2 "Download bundled SDL2 binaries" ON "ENABLE_SDL2;MSVC" OFF)
option(ENABLE_QT "Enable the Qt frontend" ON)
option(ENABLE_QT_TRANSLATION "Enable translations for the Qt frontend" OFF)
option(CITRA_USE_BUNDLED_QT "Download bundled Qt binaries" OFF)
CMAKE_DEPENDENT_OPTION(CITRA_USE_BUNDLED_QT "Download bundled Qt binaries" ON "ENABLE_QT;MSVC" OFF)
option(ENABLE_WEB_SERVICE "Enable web services (telemetry, etc.)" ON)
option(CITRA_USE_BUNDLED_CURL "FOR MINGW ONLY: Download curl configured against winssl instead of openssl" OFF)
@ -274,6 +277,53 @@ if (UNIX OR MINGW)
endif()
endif()
# Setup a custom clang-format target (if clang-format can be found) that will run
# against all the src files. This should be used before making a pull request.
# =======================================================================
set(CLANG_FORMAT_POSTFIX "-6.0")
find_program(CLANG_FORMAT
NAMES clang-format${CLANG_FORMAT_POSTFIX}
clang-format
PATHS ${CMAKE_BINARY_DIR}/externals)
# if find_program doesn't find it, try to download from externals
if (NOT CLANG_FORMAT)
if (WIN32)
message(STATUS "Clang format not found! Downloading...")
set(CLANG_FORMAT "${CMAKE_BINARY_DIR}/externals/clang-format${CLANG_FORMAT_POSTFIX}.exe")
file(DOWNLOAD
https://github.com/yuzu-emu/ext-windows-bin/raw/master/clang-format${CLANG_FORMAT_POSTFIX}.exe
"${CLANG_FORMAT}" SHOW_PROGRESS
STATUS DOWNLOAD_SUCCESS)
if (NOT DOWNLOAD_SUCCESS EQUAL 0)
message(WARNING "Could not download clang format! Disabling the clang format target")
file(REMOVE ${CLANG_FORMAT})
unset(CLANG_FORMAT)
endif()
else()
message(WARNING "Clang format not found! Disabling the clang format target")
endif()
endif()
if (CLANG_FORMAT)
set(SRCS ${CMAKE_SOURCE_DIR}/src)
set(CCOMMENT "Running clang format against all the .h and .cpp files in src/")
if (WIN32)
add_custom_target(clang-format
COMMAND powershell.exe -Command "${CLANG_FORMAT} -i @(Get-ChildItem -Recurse ${SRCS}/* -Include \'*.h\', \'*.cpp\')"
COMMENT ${CCOMMENT})
elseif(MINGW)
add_custom_target(clang-format
COMMAND find `cygpath -u ${SRCS}` -iname *.h -o -iname *.cpp | xargs `cygpath -u ${CLANG_FORMAT}` -i
COMMENT ${CCOMMENT})
else()
add_custom_target(clang-format
COMMAND find ${SRCS} -iname *.h -o -iname *.cpp | xargs ${CLANG_FORMAT} -i
COMMENT ${CCOMMENT})
endif()
unset(SRCS)
unset(CCOMMENT)
endif()
# Include source code
# ===================

View File

@ -5,7 +5,17 @@
If you believe you have a valid issue report, please post text or a screenshot from the log (the console window that opens alongside Citra) and build version (hex string visible in the titlebar and zip filename), as well as your hardware and software information if applicable.
# Contributing
Citra is a brand new project, so we have a great opportunity to keep things clean and well organized early on. As such, coding style is very important when making commits. We run clang-format on our CI to check the code. Please use it to format your code when contributing. However, it doesn't cover all the rules below. Some of them aren't very strict rules since we want to be flexible and we understand that under certain circumstances some of them can be counterproductive. Just try to follow as many of them as possible:
Citra is a brand new project, so we have a great opportunity to keep things clean and well organized early on. As such, coding style is very important when making commits. We run clang-format on our CI to check the code. Please use it to format your code when contributing. However, it doesn't cover all the rules below. Some of them aren't very strict rules since we want to be flexible and we understand that under certain circumstances some of them can be counterproductive. Just try to follow as many of them as possible.
# Using clang format (version 6.0)
When generating the native build script for your toolset, cmake will try to find the correct version of clang format (or will download it on windows). Before running cmake, please install clang format version 6.0 for your platform as follows:
* Windows: do nothing; cmake will download a pre built binary for MSVC and MINGW. MSVC users can additionally install a clang format Visual Studio extension to add features like format on save.
* OSX: run `brew install clang-format`.
* Linux: use your package manager to get an appropriate binary.
If clang format is found, then cmake will add a custom build target that can be run at any time to run clang format against *all* source files and update the formatting in them. This should be used before making a pull request so that the reviewers can spend more time reviewing the code instead of having to worry about minor style violations. On MSVC, you can run clang format by building the clang-format project in the solution. On OSX, you can either use the Makefile target `make clang-format` or by building the clang-format target in XCode. For Makefile builds, you can use the clang-format target with `make clang-format`
### General Rules
* A lot of code was taken from other projects (e.g. Dolphin, PPSSPP, Gekko, SkyEye). In general, when editing other people's code, follow the style of the module you're in (or better yet, fix the style if it drastically differs from our guide).

View File

@ -5,8 +5,8 @@
#pragma once
#include <array>
#include <queue>
#include <vector>
#include <queue>
#include "audio_core/audio_types.h"
#include "audio_core/codec.h"
#include "audio_core/hle/common.h"

View File

@ -42,4 +42,4 @@ public:
virtual std::vector<std::string> GetDeviceList() const = 0;
};
} // namespace
} // namespace AudioCore

View File

@ -49,10 +49,18 @@ static const std::array<int, Settings::NativeButton::NumButtons> default_buttons
static const std::array<std::array<int, 5>, Settings::NativeAnalog::NumAnalogs> default_analogs{{
{
SDL_SCANCODE_UP, SDL_SCANCODE_DOWN, SDL_SCANCODE_LEFT, SDL_SCANCODE_RIGHT, SDL_SCANCODE_D,
SDL_SCANCODE_UP,
SDL_SCANCODE_DOWN,
SDL_SCANCODE_LEFT,
SDL_SCANCODE_RIGHT,
SDL_SCANCODE_D,
},
{
SDL_SCANCODE_I, SDL_SCANCODE_K, SDL_SCANCODE_J, SDL_SCANCODE_L, SDL_SCANCODE_D,
SDL_SCANCODE_I,
SDL_SCANCODE_K,
SDL_SCANCODE_J,
SDL_SCANCODE_L,
SDL_SCANCODE_D,
},
}};

View File

@ -24,10 +24,18 @@ const std::array<int, Settings::NativeButton::NumButtons> Config::default_button
const std::array<std::array<int, 5>, Settings::NativeAnalog::NumAnalogs> Config::default_analogs{{
{
Qt::Key_Up, Qt::Key_Down, Qt::Key_Left, Qt::Key_Right, Qt::Key_D,
Qt::Key_Up,
Qt::Key_Down,
Qt::Key_Left,
Qt::Key_Right,
Qt::Key_D,
},
{
Qt::Key_I, Qt::Key_K, Qt::Key_J, Qt::Key_L, Qt::Key_D,
Qt::Key_I,
Qt::Key_K,
Qt::Key_J,
Qt::Key_L,
Qt::Key_D,
},
}};

View File

@ -13,7 +13,11 @@
const std::array<std::string, ConfigureInput::ANALOG_SUB_BUTTONS_NUM>
ConfigureInput::analog_sub_buttons{{
"up", "down", "left", "right", "modifier",
"up",
"down",
"left",
"right",
"modifier",
}};
static QString getKeyName(int key_code) {
@ -35,7 +39,8 @@ static void SetAnalogButton(const Common::ParamPackage& input_param,
Common::ParamPackage& analog_param, const std::string& button_name) {
if (analog_param.Get("engine", "") != "analog_from_button") {
analog_param = {
{"engine", "analog_from_button"}, {"modifier_scale", "0.5"},
{"engine", "analog_from_button"},
{"modifier_scale", "0.5"},
};
}
analog_param.Set(button_name, input_param.Serialize());
@ -102,11 +107,17 @@ ConfigureInput::ConfigureInput(QWidget* parent)
analog_map_buttons = {{
{
ui->buttonCircleUp, ui->buttonCircleDown, ui->buttonCircleLeft, ui->buttonCircleRight,
ui->buttonCircleUp,
ui->buttonCircleDown,
ui->buttonCircleLeft,
ui->buttonCircleRight,
ui->buttonCircleMod,
},
{
ui->buttonCStickUp, ui->buttonCStickDown, ui->buttonCStickLeft, ui->buttonCStickRight,
ui->buttonCStickUp,
ui->buttonCStickDown,
ui->buttonCStickLeft,
ui->buttonCStickRight,
nullptr,
},
}};

View File

@ -11,7 +11,18 @@
#include "ui_configure_system.h"
static const std::array<int, 12> days_in_month = {{
31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31,
31,
29,
31,
30,
31,
30,
31,
31,
30,
31,
30,
31,
}};
ConfigureSystem::ConfigureSystem(QWidget* parent) : QWidget(parent), ui(new Ui::ConfigureSystem) {

View File

@ -129,8 +129,8 @@ void BreakPointModel::OnResumed() {
GraphicsBreakPointsWidget::GraphicsBreakPointsWidget(
std::shared_ptr<Pica::DebugContext> debug_context, QWidget* parent)
: QDockWidget(tr("Pica Breakpoints"), parent),
Pica::DebugContext::BreakPointObserver(debug_context) {
: QDockWidget(tr("Pica Breakpoints"), parent), Pica::DebugContext::BreakPointObserver(
debug_context) {
setObjectName("PicaBreakPointsWidget");
status_text = new QLabel(tr("Emulation running"));

View File

@ -21,8 +21,8 @@
#include "video_core/shader/shader.h"
#include "video_core/shader/shader_interpreter.h"
using nihstro::OpCode;
using nihstro::Instruction;
using nihstro::OpCode;
using nihstro::SourceRegister;
using nihstro::SwizzlePattern;

View File

@ -20,7 +20,7 @@ class Mutex;
class Semaphore;
class Thread;
class Timer;
}
} // namespace Kernel
class WaitTreeThread;

View File

@ -221,7 +221,7 @@ public:
IntTy m_val;
};
} // Common
} // namespace Common
typedef Common::BitSet<u8> BitSet8;
typedef Common::BitSet<u16> BitSet16;

View File

@ -607,7 +607,8 @@ public:
u32 cookie = arbitraryNumber;
Do(cookie);
if (mode == PointerWrap::MODE_READ && cookie != arbitraryNumber) {
LOG_ERROR(Common, "After \"%s\", found %d (0x%X) instead of save marker %d (0x%X). "
LOG_ERROR(Common,
"After \"%s\", found %d (0x%X) instead of save marker %d (0x%X). "
"Aborting savestate load...",
prevName, cookie, cookie, arbitraryNumber, arbitraryNumber);
SetError(ERROR_FAILURE);

View File

@ -256,4 +256,4 @@ inline void EncodeX24S8(u8 stencil, u8* bytes) {
bytes[3] = stencil;
}
} // namespace
} // namespace Color

View File

@ -873,8 +873,7 @@ bool IOFile::Flush() {
}
bool IOFile::Resize(u64 size) {
if (!IsOpen() ||
0 !=
if (!IsOpen() || 0 !=
#ifdef _WIN32
// ector: _chsize sucks, not 64-bit safe
// F|RES: changed to _chsize_s. i think it is 64-bit safe
@ -889,4 +888,4 @@ bool IOFile::Resize(u64 size) {
return m_good;
}
} // namespace
} // namespace FileUtil

View File

@ -253,7 +253,7 @@ private:
bool m_good = true;
};
} // namespace
} // namespace FileUtil
// To deal with Windows being dumb at unicode:
template <typename T>

View File

@ -114,8 +114,8 @@ const char* GetLevelName(Level log_level) {
Entry CreateEntry(Class log_class, Level log_level, const char* filename, unsigned int line_nr,
const char* function, const char* format, va_list args) {
using std::chrono::steady_clock;
using std::chrono::duration_cast;
using std::chrono::steady_clock;
static steady_clock::time_point time_origin = steady_clock::now();
@ -154,4 +154,4 @@ void LogMessage(Class log_class, Level log_level, const char* filename, unsigned
PrintColoredMessage(entry);
}
}
} // namespace Log

View File

@ -47,4 +47,4 @@ Entry CreateEntry(Class log_class, Level log_level, const char* filename, unsign
const char* function, const char* format, va_list args);
void SetFilter(Filter* filter);
}
} // namespace Log

View File

@ -94,4 +94,4 @@ bool Filter::ParseFilterRule(const std::string::const_iterator begin,
bool Filter::CheckMessage(Class log_class, Level level) const {
return static_cast<u8>(level) >= static_cast<u8>(class_levels[static_cast<size_t>(log_class)]);
}
}
} // namespace Log

View File

@ -50,4 +50,4 @@ public:
private:
std::array<Level, (size_t)Class::Count> class_levels;
};
}
} // namespace Log

View File

@ -129,4 +129,4 @@ void PrintColoredMessage(const Entry& entry) {
#undef ESC
#endif
}
}
} // namespace Log

View File

@ -28,4 +28,4 @@ void FormatLogMessage(const Entry& entry, char* out_text, size_t text_len);
void PrintMessage(const Entry& entry);
/// Prints the same message as `PrintMessage`, but colored acoording to the severity level.
void PrintColoredMessage(const Entry& entry);
}
} // namespace Log

View File

@ -40,7 +40,8 @@ void* AllocateExecutableMemory(size_t size, bool low) {
if (low && (!map_hint))
map_hint = (char*)round_page(512 * 1024 * 1024); /* 0.5 GB rounded up to the next page */
#endif
void* ptr = mmap(map_hint, size, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_ANON | MAP_PRIVATE
void* ptr = mmap(map_hint, size, PROT_READ | PROT_WRITE | PROT_EXEC,
MAP_ANON | MAP_PRIVATE
#if defined(ARCHITECTURE_X64) && defined(MAP_32BIT)
| (low ? MAP_32BIT : 0)
#endif

View File

@ -46,4 +46,4 @@ inline Quaternion<float> MakeQuaternion(const Math::Vec3<float>& axis, float ang
return {axis * std::sin(angle / 2), std::cos(angle / 2)};
}
} // namspace Math
} // namespace Math

View File

@ -12,4 +12,4 @@ extern const char g_scm_desc[];
extern const char g_build_name[];
extern const char g_build_date[];
} // namespace
} // namespace Common

View File

@ -22,7 +22,7 @@ template <typename Func>
ScopeExitHelper<Func> ScopeExit(Func&& func) {
return ScopeExitHelper<Func>(std::move(func));
}
}
} // namespace detail
/**
* This macro allows you to conveniently specify a block of code that will run on scope exit. Handy

View File

@ -462,4 +462,4 @@ std::string StringFromFixedZeroTerminatedBuffer(const char* buffer, size_t max_l
return std::string(buffer, len);
}
}
} // namespace Common

View File

@ -134,4 +134,4 @@ bool ComparePartialString(InIt begin, InIt end, const char* other) {
* NUL-terminated then the string ends at max_len characters.
*/
std::string StringFromFixedZeroTerminatedBuffer(const char* buffer, size_t max_len);
}
} // namespace Common

View File

@ -158,4 +158,4 @@ private:
std::array<Queue, NUM_QUEUES> queues;
};
} // namespace
} // namespace Common

View File

@ -60,20 +60,41 @@ const Xbyak::Reg ABI_PARAM4 = Xbyak::util::r9;
const BitSet32 ABI_ALL_CALLER_SAVED = BuildRegSet({
// GPRs
Xbyak::util::rcx, Xbyak::util::rdx, Xbyak::util::r8, Xbyak::util::r9, Xbyak::util::r10,
Xbyak::util::rcx,
Xbyak::util::rdx,
Xbyak::util::r8,
Xbyak::util::r9,
Xbyak::util::r10,
Xbyak::util::r11,
// XMMs
Xbyak::util::xmm0, Xbyak::util::xmm1, Xbyak::util::xmm2, Xbyak::util::xmm3, Xbyak::util::xmm4,
Xbyak::util::xmm0,
Xbyak::util::xmm1,
Xbyak::util::xmm2,
Xbyak::util::xmm3,
Xbyak::util::xmm4,
Xbyak::util::xmm5,
});
const BitSet32 ABI_ALL_CALLEE_SAVED = BuildRegSet({
// GPRs
Xbyak::util::rbx, Xbyak::util::rsi, Xbyak::util::rdi, Xbyak::util::rbp, Xbyak::util::r12,
Xbyak::util::r13, Xbyak::util::r14, Xbyak::util::r15,
Xbyak::util::rbx,
Xbyak::util::rsi,
Xbyak::util::rdi,
Xbyak::util::rbp,
Xbyak::util::r12,
Xbyak::util::r13,
Xbyak::util::r14,
Xbyak::util::r15,
// XMMs
Xbyak::util::xmm6, Xbyak::util::xmm7, Xbyak::util::xmm8, Xbyak::util::xmm9, Xbyak::util::xmm10,
Xbyak::util::xmm11, Xbyak::util::xmm12, Xbyak::util::xmm13, Xbyak::util::xmm14,
Xbyak::util::xmm6,
Xbyak::util::xmm7,
Xbyak::util::xmm8,
Xbyak::util::xmm9,
Xbyak::util::xmm10,
Xbyak::util::xmm11,
Xbyak::util::xmm12,
Xbyak::util::xmm13,
Xbyak::util::xmm14,
Xbyak::util::xmm15,
});
@ -90,18 +111,40 @@ const Xbyak::Reg ABI_PARAM4 = Xbyak::util::rcx;
const BitSet32 ABI_ALL_CALLER_SAVED = BuildRegSet({
// GPRs
Xbyak::util::rcx, Xbyak::util::rdx, Xbyak::util::rdi, Xbyak::util::rsi, Xbyak::util::r8,
Xbyak::util::r9, Xbyak::util::r10, Xbyak::util::r11,
Xbyak::util::rcx,
Xbyak::util::rdx,
Xbyak::util::rdi,
Xbyak::util::rsi,
Xbyak::util::r8,
Xbyak::util::r9,
Xbyak::util::r10,
Xbyak::util::r11,
// XMMs
Xbyak::util::xmm0, Xbyak::util::xmm1, Xbyak::util::xmm2, Xbyak::util::xmm3, Xbyak::util::xmm4,
Xbyak::util::xmm5, Xbyak::util::xmm6, Xbyak::util::xmm7, Xbyak::util::xmm8, Xbyak::util::xmm9,
Xbyak::util::xmm10, Xbyak::util::xmm11, Xbyak::util::xmm12, Xbyak::util::xmm13,
Xbyak::util::xmm14, Xbyak::util::xmm15,
Xbyak::util::xmm0,
Xbyak::util::xmm1,
Xbyak::util::xmm2,
Xbyak::util::xmm3,
Xbyak::util::xmm4,
Xbyak::util::xmm5,
Xbyak::util::xmm6,
Xbyak::util::xmm7,
Xbyak::util::xmm8,
Xbyak::util::xmm9,
Xbyak::util::xmm10,
Xbyak::util::xmm11,
Xbyak::util::xmm12,
Xbyak::util::xmm13,
Xbyak::util::xmm14,
Xbyak::util::xmm15,
});
const BitSet32 ABI_ALL_CALLEE_SAVED = BuildRegSet({
// GPRs
Xbyak::util::rbx, Xbyak::util::rbp, Xbyak::util::r12, Xbyak::util::r13, Xbyak::util::r14,
Xbyak::util::rbx,
Xbyak::util::rbp,
Xbyak::util::r12,
Xbyak::util::r13,
Xbyak::util::r14,
Xbyak::util::r15,
});

View File

@ -28,7 +28,7 @@ enum {
ARMVFP3,
ARMV6K,
};
}
} // namespace
// clang-format off
const InstructionSetEncodingItem arm_instruction[] = {

View File

@ -1808,78 +1808,210 @@ static ARM_INST_PTR INTERPRETER_TRANSLATE(yield)(unsigned int inst, int index) {
#undef VFP_INTERPRETER_TRANS
const transop_fp_t arm_instruction_trans[] = {
INTERPRETER_TRANSLATE(vmla), INTERPRETER_TRANSLATE(vmls), INTERPRETER_TRANSLATE(vnmla),
INTERPRETER_TRANSLATE(vnmls), INTERPRETER_TRANSLATE(vnmul), INTERPRETER_TRANSLATE(vmul),
INTERPRETER_TRANSLATE(vadd), INTERPRETER_TRANSLATE(vsub), INTERPRETER_TRANSLATE(vdiv),
INTERPRETER_TRANSLATE(vmovi), INTERPRETER_TRANSLATE(vmovr), INTERPRETER_TRANSLATE(vabs),
INTERPRETER_TRANSLATE(vneg), INTERPRETER_TRANSLATE(vsqrt), INTERPRETER_TRANSLATE(vcmp),
INTERPRETER_TRANSLATE(vcmp2), INTERPRETER_TRANSLATE(vcvtbds), INTERPRETER_TRANSLATE(vcvtbff),
INTERPRETER_TRANSLATE(vcvtbfi), INTERPRETER_TRANSLATE(vmovbrs), INTERPRETER_TRANSLATE(vmsr),
INTERPRETER_TRANSLATE(vmovbrc), INTERPRETER_TRANSLATE(vmrs), INTERPRETER_TRANSLATE(vmovbcr),
INTERPRETER_TRANSLATE(vmovbrrss), INTERPRETER_TRANSLATE(vmovbrrd), INTERPRETER_TRANSLATE(vstr),
INTERPRETER_TRANSLATE(vpush), INTERPRETER_TRANSLATE(vstm), INTERPRETER_TRANSLATE(vpop),
INTERPRETER_TRANSLATE(vldr), INTERPRETER_TRANSLATE(vldm),
INTERPRETER_TRANSLATE(vmla),
INTERPRETER_TRANSLATE(vmls),
INTERPRETER_TRANSLATE(vnmla),
INTERPRETER_TRANSLATE(vnmls),
INTERPRETER_TRANSLATE(vnmul),
INTERPRETER_TRANSLATE(vmul),
INTERPRETER_TRANSLATE(vadd),
INTERPRETER_TRANSLATE(vsub),
INTERPRETER_TRANSLATE(vdiv),
INTERPRETER_TRANSLATE(vmovi),
INTERPRETER_TRANSLATE(vmovr),
INTERPRETER_TRANSLATE(vabs),
INTERPRETER_TRANSLATE(vneg),
INTERPRETER_TRANSLATE(vsqrt),
INTERPRETER_TRANSLATE(vcmp),
INTERPRETER_TRANSLATE(vcmp2),
INTERPRETER_TRANSLATE(vcvtbds),
INTERPRETER_TRANSLATE(vcvtbff),
INTERPRETER_TRANSLATE(vcvtbfi),
INTERPRETER_TRANSLATE(vmovbrs),
INTERPRETER_TRANSLATE(vmsr),
INTERPRETER_TRANSLATE(vmovbrc),
INTERPRETER_TRANSLATE(vmrs),
INTERPRETER_TRANSLATE(vmovbcr),
INTERPRETER_TRANSLATE(vmovbrrss),
INTERPRETER_TRANSLATE(vmovbrrd),
INTERPRETER_TRANSLATE(vstr),
INTERPRETER_TRANSLATE(vpush),
INTERPRETER_TRANSLATE(vstm),
INTERPRETER_TRANSLATE(vpop),
INTERPRETER_TRANSLATE(vldr),
INTERPRETER_TRANSLATE(vldm),
INTERPRETER_TRANSLATE(srs), INTERPRETER_TRANSLATE(rfe), INTERPRETER_TRANSLATE(bkpt),
INTERPRETER_TRANSLATE(blx), INTERPRETER_TRANSLATE(cps), INTERPRETER_TRANSLATE(pld),
INTERPRETER_TRANSLATE(setend), INTERPRETER_TRANSLATE(clrex), INTERPRETER_TRANSLATE(rev16),
INTERPRETER_TRANSLATE(usad8), INTERPRETER_TRANSLATE(sxtb), INTERPRETER_TRANSLATE(uxtb),
INTERPRETER_TRANSLATE(sxth), INTERPRETER_TRANSLATE(sxtb16), INTERPRETER_TRANSLATE(uxth),
INTERPRETER_TRANSLATE(uxtb16), INTERPRETER_TRANSLATE(cpy), INTERPRETER_TRANSLATE(uxtab),
INTERPRETER_TRANSLATE(ssub8), INTERPRETER_TRANSLATE(shsub8), INTERPRETER_TRANSLATE(ssubaddx),
INTERPRETER_TRANSLATE(strex), INTERPRETER_TRANSLATE(strexb), INTERPRETER_TRANSLATE(swp),
INTERPRETER_TRANSLATE(swpb), INTERPRETER_TRANSLATE(ssub16), INTERPRETER_TRANSLATE(ssat16),
INTERPRETER_TRANSLATE(shsubaddx), INTERPRETER_TRANSLATE(qsubaddx),
INTERPRETER_TRANSLATE(shaddsubx), INTERPRETER_TRANSLATE(shadd8), INTERPRETER_TRANSLATE(shadd16),
INTERPRETER_TRANSLATE(sel), INTERPRETER_TRANSLATE(saddsubx), INTERPRETER_TRANSLATE(sadd8),
INTERPRETER_TRANSLATE(sadd16), INTERPRETER_TRANSLATE(shsub16), INTERPRETER_TRANSLATE(umaal),
INTERPRETER_TRANSLATE(uxtab16), INTERPRETER_TRANSLATE(usubaddx), INTERPRETER_TRANSLATE(usub8),
INTERPRETER_TRANSLATE(usub16), INTERPRETER_TRANSLATE(usat16), INTERPRETER_TRANSLATE(usada8),
INTERPRETER_TRANSLATE(uqsubaddx), INTERPRETER_TRANSLATE(uqsub8), INTERPRETER_TRANSLATE(uqsub16),
INTERPRETER_TRANSLATE(uqaddsubx), INTERPRETER_TRANSLATE(uqadd8), INTERPRETER_TRANSLATE(uqadd16),
INTERPRETER_TRANSLATE(sxtab), INTERPRETER_TRANSLATE(uhsubaddx), INTERPRETER_TRANSLATE(uhsub8),
INTERPRETER_TRANSLATE(uhsub16), INTERPRETER_TRANSLATE(uhaddsubx), INTERPRETER_TRANSLATE(uhadd8),
INTERPRETER_TRANSLATE(uhadd16), INTERPRETER_TRANSLATE(uaddsubx), INTERPRETER_TRANSLATE(uadd8),
INTERPRETER_TRANSLATE(uadd16), INTERPRETER_TRANSLATE(sxtah), INTERPRETER_TRANSLATE(sxtab16),
INTERPRETER_TRANSLATE(qadd8), INTERPRETER_TRANSLATE(bxj), INTERPRETER_TRANSLATE(clz),
INTERPRETER_TRANSLATE(uxtah), INTERPRETER_TRANSLATE(bx), INTERPRETER_TRANSLATE(rev),
INTERPRETER_TRANSLATE(blx), INTERPRETER_TRANSLATE(revsh), INTERPRETER_TRANSLATE(qadd),
INTERPRETER_TRANSLATE(qadd16), INTERPRETER_TRANSLATE(qaddsubx), INTERPRETER_TRANSLATE(ldrex),
INTERPRETER_TRANSLATE(qdadd), INTERPRETER_TRANSLATE(qdsub), INTERPRETER_TRANSLATE(qsub),
INTERPRETER_TRANSLATE(ldrexb), INTERPRETER_TRANSLATE(qsub8), INTERPRETER_TRANSLATE(qsub16),
INTERPRETER_TRANSLATE(smuad), INTERPRETER_TRANSLATE(smmul), INTERPRETER_TRANSLATE(smusd),
INTERPRETER_TRANSLATE(smlsd), INTERPRETER_TRANSLATE(smlsld), INTERPRETER_TRANSLATE(smmla),
INTERPRETER_TRANSLATE(smmls), INTERPRETER_TRANSLATE(smlald), INTERPRETER_TRANSLATE(smlad),
INTERPRETER_TRANSLATE(smlaw), INTERPRETER_TRANSLATE(smulw), INTERPRETER_TRANSLATE(pkhtb),
INTERPRETER_TRANSLATE(pkhbt), INTERPRETER_TRANSLATE(smul), INTERPRETER_TRANSLATE(smlalxy),
INTERPRETER_TRANSLATE(smla), INTERPRETER_TRANSLATE(mcrr), INTERPRETER_TRANSLATE(mrrc),
INTERPRETER_TRANSLATE(cmp), INTERPRETER_TRANSLATE(tst), INTERPRETER_TRANSLATE(teq),
INTERPRETER_TRANSLATE(cmn), INTERPRETER_TRANSLATE(smull), INTERPRETER_TRANSLATE(umull),
INTERPRETER_TRANSLATE(umlal), INTERPRETER_TRANSLATE(smlal), INTERPRETER_TRANSLATE(mul),
INTERPRETER_TRANSLATE(mla), INTERPRETER_TRANSLATE(ssat), INTERPRETER_TRANSLATE(usat),
INTERPRETER_TRANSLATE(mrs), INTERPRETER_TRANSLATE(msr), INTERPRETER_TRANSLATE(and),
INTERPRETER_TRANSLATE(bic), INTERPRETER_TRANSLATE(ldm), INTERPRETER_TRANSLATE(eor),
INTERPRETER_TRANSLATE(add), INTERPRETER_TRANSLATE(rsb), INTERPRETER_TRANSLATE(rsc),
INTERPRETER_TRANSLATE(sbc), INTERPRETER_TRANSLATE(adc), INTERPRETER_TRANSLATE(sub),
INTERPRETER_TRANSLATE(orr), INTERPRETER_TRANSLATE(mvn), INTERPRETER_TRANSLATE(mov),
INTERPRETER_TRANSLATE(stm), INTERPRETER_TRANSLATE(ldm), INTERPRETER_TRANSLATE(ldrsh),
INTERPRETER_TRANSLATE(stm), INTERPRETER_TRANSLATE(ldm), INTERPRETER_TRANSLATE(ldrsb),
INTERPRETER_TRANSLATE(strd), INTERPRETER_TRANSLATE(ldrh), INTERPRETER_TRANSLATE(strh),
INTERPRETER_TRANSLATE(ldrd), INTERPRETER_TRANSLATE(strt), INTERPRETER_TRANSLATE(strbt),
INTERPRETER_TRANSLATE(ldrbt), INTERPRETER_TRANSLATE(ldrt), INTERPRETER_TRANSLATE(mrc),
INTERPRETER_TRANSLATE(mcr), INTERPRETER_TRANSLATE(msr), INTERPRETER_TRANSLATE(msr),
INTERPRETER_TRANSLATE(msr), INTERPRETER_TRANSLATE(msr), INTERPRETER_TRANSLATE(msr),
INTERPRETER_TRANSLATE(ldrb), INTERPRETER_TRANSLATE(strb), INTERPRETER_TRANSLATE(ldr),
INTERPRETER_TRANSLATE(ldrcond), INTERPRETER_TRANSLATE(str), INTERPRETER_TRANSLATE(cdp),
INTERPRETER_TRANSLATE(stc), INTERPRETER_TRANSLATE(ldc), INTERPRETER_TRANSLATE(ldrexd),
INTERPRETER_TRANSLATE(strexd), INTERPRETER_TRANSLATE(ldrexh), INTERPRETER_TRANSLATE(strexh),
INTERPRETER_TRANSLATE(nop), INTERPRETER_TRANSLATE(yield), INTERPRETER_TRANSLATE(wfe),
INTERPRETER_TRANSLATE(wfi), INTERPRETER_TRANSLATE(sev), INTERPRETER_TRANSLATE(swi),
INTERPRETER_TRANSLATE(srs),
INTERPRETER_TRANSLATE(rfe),
INTERPRETER_TRANSLATE(bkpt),
INTERPRETER_TRANSLATE(blx),
INTERPRETER_TRANSLATE(cps),
INTERPRETER_TRANSLATE(pld),
INTERPRETER_TRANSLATE(setend),
INTERPRETER_TRANSLATE(clrex),
INTERPRETER_TRANSLATE(rev16),
INTERPRETER_TRANSLATE(usad8),
INTERPRETER_TRANSLATE(sxtb),
INTERPRETER_TRANSLATE(uxtb),
INTERPRETER_TRANSLATE(sxth),
INTERPRETER_TRANSLATE(sxtb16),
INTERPRETER_TRANSLATE(uxth),
INTERPRETER_TRANSLATE(uxtb16),
INTERPRETER_TRANSLATE(cpy),
INTERPRETER_TRANSLATE(uxtab),
INTERPRETER_TRANSLATE(ssub8),
INTERPRETER_TRANSLATE(shsub8),
INTERPRETER_TRANSLATE(ssubaddx),
INTERPRETER_TRANSLATE(strex),
INTERPRETER_TRANSLATE(strexb),
INTERPRETER_TRANSLATE(swp),
INTERPRETER_TRANSLATE(swpb),
INTERPRETER_TRANSLATE(ssub16),
INTERPRETER_TRANSLATE(ssat16),
INTERPRETER_TRANSLATE(shsubaddx),
INTERPRETER_TRANSLATE(qsubaddx),
INTERPRETER_TRANSLATE(shaddsubx),
INTERPRETER_TRANSLATE(shadd8),
INTERPRETER_TRANSLATE(shadd16),
INTERPRETER_TRANSLATE(sel),
INTERPRETER_TRANSLATE(saddsubx),
INTERPRETER_TRANSLATE(sadd8),
INTERPRETER_TRANSLATE(sadd16),
INTERPRETER_TRANSLATE(shsub16),
INTERPRETER_TRANSLATE(umaal),
INTERPRETER_TRANSLATE(uxtab16),
INTERPRETER_TRANSLATE(usubaddx),
INTERPRETER_TRANSLATE(usub8),
INTERPRETER_TRANSLATE(usub16),
INTERPRETER_TRANSLATE(usat16),
INTERPRETER_TRANSLATE(usada8),
INTERPRETER_TRANSLATE(uqsubaddx),
INTERPRETER_TRANSLATE(uqsub8),
INTERPRETER_TRANSLATE(uqsub16),
INTERPRETER_TRANSLATE(uqaddsubx),
INTERPRETER_TRANSLATE(uqadd8),
INTERPRETER_TRANSLATE(uqadd16),
INTERPRETER_TRANSLATE(sxtab),
INTERPRETER_TRANSLATE(uhsubaddx),
INTERPRETER_TRANSLATE(uhsub8),
INTERPRETER_TRANSLATE(uhsub16),
INTERPRETER_TRANSLATE(uhaddsubx),
INTERPRETER_TRANSLATE(uhadd8),
INTERPRETER_TRANSLATE(uhadd16),
INTERPRETER_TRANSLATE(uaddsubx),
INTERPRETER_TRANSLATE(uadd8),
INTERPRETER_TRANSLATE(uadd16),
INTERPRETER_TRANSLATE(sxtah),
INTERPRETER_TRANSLATE(sxtab16),
INTERPRETER_TRANSLATE(qadd8),
INTERPRETER_TRANSLATE(bxj),
INTERPRETER_TRANSLATE(clz),
INTERPRETER_TRANSLATE(uxtah),
INTERPRETER_TRANSLATE(bx),
INTERPRETER_TRANSLATE(rev),
INTERPRETER_TRANSLATE(blx),
INTERPRETER_TRANSLATE(revsh),
INTERPRETER_TRANSLATE(qadd),
INTERPRETER_TRANSLATE(qadd16),
INTERPRETER_TRANSLATE(qaddsubx),
INTERPRETER_TRANSLATE(ldrex),
INTERPRETER_TRANSLATE(qdadd),
INTERPRETER_TRANSLATE(qdsub),
INTERPRETER_TRANSLATE(qsub),
INTERPRETER_TRANSLATE(ldrexb),
INTERPRETER_TRANSLATE(qsub8),
INTERPRETER_TRANSLATE(qsub16),
INTERPRETER_TRANSLATE(smuad),
INTERPRETER_TRANSLATE(smmul),
INTERPRETER_TRANSLATE(smusd),
INTERPRETER_TRANSLATE(smlsd),
INTERPRETER_TRANSLATE(smlsld),
INTERPRETER_TRANSLATE(smmla),
INTERPRETER_TRANSLATE(smmls),
INTERPRETER_TRANSLATE(smlald),
INTERPRETER_TRANSLATE(smlad),
INTERPRETER_TRANSLATE(smlaw),
INTERPRETER_TRANSLATE(smulw),
INTERPRETER_TRANSLATE(pkhtb),
INTERPRETER_TRANSLATE(pkhbt),
INTERPRETER_TRANSLATE(smul),
INTERPRETER_TRANSLATE(smlalxy),
INTERPRETER_TRANSLATE(smla),
INTERPRETER_TRANSLATE(mcrr),
INTERPRETER_TRANSLATE(mrrc),
INTERPRETER_TRANSLATE(cmp),
INTERPRETER_TRANSLATE(tst),
INTERPRETER_TRANSLATE(teq),
INTERPRETER_TRANSLATE(cmn),
INTERPRETER_TRANSLATE(smull),
INTERPRETER_TRANSLATE(umull),
INTERPRETER_TRANSLATE(umlal),
INTERPRETER_TRANSLATE(smlal),
INTERPRETER_TRANSLATE(mul),
INTERPRETER_TRANSLATE(mla),
INTERPRETER_TRANSLATE(ssat),
INTERPRETER_TRANSLATE(usat),
INTERPRETER_TRANSLATE(mrs),
INTERPRETER_TRANSLATE(msr),
INTERPRETER_TRANSLATE(and),
INTERPRETER_TRANSLATE(bic),
INTERPRETER_TRANSLATE(ldm),
INTERPRETER_TRANSLATE(eor),
INTERPRETER_TRANSLATE(add),
INTERPRETER_TRANSLATE(rsb),
INTERPRETER_TRANSLATE(rsc),
INTERPRETER_TRANSLATE(sbc),
INTERPRETER_TRANSLATE(adc),
INTERPRETER_TRANSLATE(sub),
INTERPRETER_TRANSLATE(orr),
INTERPRETER_TRANSLATE(mvn),
INTERPRETER_TRANSLATE(mov),
INTERPRETER_TRANSLATE(stm),
INTERPRETER_TRANSLATE(ldm),
INTERPRETER_TRANSLATE(ldrsh),
INTERPRETER_TRANSLATE(stm),
INTERPRETER_TRANSLATE(ldm),
INTERPRETER_TRANSLATE(ldrsb),
INTERPRETER_TRANSLATE(strd),
INTERPRETER_TRANSLATE(ldrh),
INTERPRETER_TRANSLATE(strh),
INTERPRETER_TRANSLATE(ldrd),
INTERPRETER_TRANSLATE(strt),
INTERPRETER_TRANSLATE(strbt),
INTERPRETER_TRANSLATE(ldrbt),
INTERPRETER_TRANSLATE(ldrt),
INTERPRETER_TRANSLATE(mrc),
INTERPRETER_TRANSLATE(mcr),
INTERPRETER_TRANSLATE(msr),
INTERPRETER_TRANSLATE(msr),
INTERPRETER_TRANSLATE(msr),
INTERPRETER_TRANSLATE(msr),
INTERPRETER_TRANSLATE(msr),
INTERPRETER_TRANSLATE(ldrb),
INTERPRETER_TRANSLATE(strb),
INTERPRETER_TRANSLATE(ldr),
INTERPRETER_TRANSLATE(ldrcond),
INTERPRETER_TRANSLATE(str),
INTERPRETER_TRANSLATE(cdp),
INTERPRETER_TRANSLATE(stc),
INTERPRETER_TRANSLATE(ldc),
INTERPRETER_TRANSLATE(ldrexd),
INTERPRETER_TRANSLATE(strexd),
INTERPRETER_TRANSLATE(ldrexh),
INTERPRETER_TRANSLATE(strexh),
INTERPRETER_TRANSLATE(nop),
INTERPRETER_TRANSLATE(yield),
INTERPRETER_TRANSLATE(wfe),
INTERPRETER_TRANSLATE(wfi),
INTERPRETER_TRANSLATE(sev),
INTERPRETER_TRANSLATE(swi),
INTERPRETER_TRANSLATE(bbl),
// All the thumb instructions should be placed the end of table
INTERPRETER_TRANSLATE(b_2_thumb), INTERPRETER_TRANSLATE(b_cond_thumb),
INTERPRETER_TRANSLATE(bl_1_thumb), INTERPRETER_TRANSLATE(bl_2_thumb),
INTERPRETER_TRANSLATE(b_2_thumb),
INTERPRETER_TRANSLATE(b_cond_thumb),
INTERPRETER_TRANSLATE(bl_1_thumb),
INTERPRETER_TRANSLATE(bl_2_thumb),
INTERPRETER_TRANSLATE(blx_1_thumb),
};

View File

@ -58,7 +58,9 @@
#include "core/arm/skyeye_common/vfp/vfp_helper.h"
static struct vfp_double vfp_double_default_qnan = {
2047, 0, VFP_DOUBLE_SIGNIFICAND_QNAN,
2047,
0,
VFP_DOUBLE_SIGNIFICAND_QNAN,
};
static void vfp_double_dump(const char* str, struct vfp_double* d) {

View File

@ -61,7 +61,9 @@
#include "core/arm/skyeye_common/vfp/vfp_helper.h"
static struct vfp_single vfp_single_default_qnan = {
255, 0, VFP_SINGLE_SIGNIFICAND_QNAN,
255,
0,
VFP_SINGLE_SIGNIFICAND_QNAN,
};
static void vfp_single_dump(const char* str, struct vfp_single* s) {

View File

@ -118,4 +118,4 @@ std::vector<u8> Path::AsBinary() const {
return {};
}
}
}
} // namespace FileSys

View File

@ -245,7 +245,8 @@ void ArchiveFactory_SelfNCCH::Register(Loader::AppLoader& app_loader) {
program_id);
if (ncch_data.find(program_id) != ncch_data.end()) {
LOG_WARNING(Service_FS, "Registering program %016" PRIX64
LOG_WARNING(Service_FS,
"Registering program %016" PRIX64
" with SelfNCCH will override existing mapping",
program_id);
}
@ -260,8 +261,8 @@ void ArchiveFactory_SelfNCCH::Register(Loader::AppLoader& app_loader) {
}
std::shared_ptr<FileUtil::IOFile> update_romfs_file;
if (Loader::ResultStatus::Success ==
app_loader.ReadUpdateRomFS(update_romfs_file, data.update_romfs_offset,
if (Loader::ResultStatus::Success == app_loader.ReadUpdateRomFS(update_romfs_file,
data.update_romfs_offset,
data.update_romfs_size)) {
data.update_romfs_file = std::move(update_romfs_file);

View File

@ -225,4 +225,4 @@ void CIAContainer::Print() const {
LOG_DEBUG(Service_FS, "Content %x Offset: 0x%08" PRIx64 " bytes", i, GetContentOffset(i));
}
}
}
} // namespace FileSys

View File

@ -109,8 +109,7 @@ FramebufferLayout LargeFrameLayout(unsigned width, unsigned height, bool swapped
// To do that, find the total emulation box and maximize that based on window size
float window_aspect_ratio = static_cast<float>(height) / width;
float emulation_aspect_ratio =
swapped
? Core::kScreenBottomHeight * 4 /
swapped ? Core::kScreenBottomHeight * 4 /
(Core::kScreenBottomWidth * 4.0f + Core::kScreenTopWidth)
: Core::kScreenTopHeight * 4 /
(Core::kScreenTopWidth * 4.0f + Core::kScreenBottomWidth);

View File

@ -1037,4 +1037,4 @@ bool GetCpuStepFlag() {
void SetCpuStepFlag(bool is_step) {
step_loop = is_step;
}
};
}; // namespace GDBStub

View File

@ -91,4 +91,4 @@ bool GetCpuStepFlag();
* @param is_step
*/
void SetCpuStepFlag(bool is_step);
}
} // namespace GDBStub

View File

@ -31,7 +31,7 @@ struct hash<Service::APT::AppletId> {
return std::hash<Type>()(static_cast<Type>(id_code));
}
};
}
} // namespace std
namespace HLE {
namespace Applets {
@ -134,5 +134,5 @@ void Init() {
void Shutdown() {
CoreTiming::RemoveEvent(applet_update_event);
}
}
} // namespace
} // namespace Applets
} // namespace HLE

View File

@ -86,5 +86,5 @@ void Init();
/// Shuts down the HLE applets
void Shutdown();
}
} // namespace
} // namespace Applets
} // namespace HLE

View File

@ -114,5 +114,5 @@ void SoftwareKeyboard::Finalize() {
is_running = false;
}
}
} // namespace
} // namespace Applets
} // namespace HLE

View File

@ -82,5 +82,5 @@ private:
/// Configuration of this instance of the SoftwareKeyboard, as received from the application
SoftwareKeyboardConfig config;
};
}
} // namespace
} // namespace Applets
} // namespace HLE

View File

@ -28,4 +28,4 @@ void Init() {
config_mem.firm_ctr_sdk_ver = 0x0000F297;
}
} // namespace
} // namespace ConfigMem

View File

@ -53,4 +53,4 @@ extern ConfigMemDef config_mem;
void Init();
} // namespace
} // namespace ConfigMem

View File

@ -39,4 +39,4 @@ ResultVal<SharedPtr<ClientSession>> ClientPort::Connect() {
return MakeResult(std::get<SharedPtr<ClientSession>>(sessions));
}
} // namespace
} // namespace Kernel

View File

@ -47,4 +47,4 @@ private:
~ClientPort() override;
};
} // namespace
} // namespace Kernel

View File

@ -52,4 +52,4 @@ ResultCode ClientSession::SendSyncRequest(SharedPtr<Thread> thread) {
return server->HandleSyncRequest(std::move(thread));
}
} // namespace
} // namespace Kernel

View File

@ -50,4 +50,4 @@ private:
~ClientSession() override;
};
} // namespace
} // namespace Kernel

View File

@ -52,4 +52,4 @@ void Event::WakeupAllWaitingThreads() {
signaled = false;
}
} // namespace
} // namespace Kernel

View File

@ -49,4 +49,4 @@ private:
~Event() override;
};
} // namespace
} // namespace Kernel

View File

@ -94,4 +94,4 @@ void HandleTable::Clear() {
next_free_slot = 0;
}
} // namespace
} // namespace Kernel

View File

@ -123,4 +123,4 @@ private:
extern HandleTable g_handle_table;
} // namespace
} // namespace Kernel

View File

@ -36,8 +36,9 @@ SharedPtr<Event> HLERequestContext::SleepClientThread(SharedPtr<Thread> thread,
std::chrono::nanoseconds timeout,
WakeupCallback&& callback) {
// Put the client thread to sleep until the wait event is signaled or the timeout expires.
thread->wakeup_callback = [ context = *this, callback ](
ThreadWakeupReason reason, SharedPtr<Thread> thread, SharedPtr<WaitObject> object) mutable {
thread->wakeup_callback = [context = *this, callback](ThreadWakeupReason reason,
SharedPtr<Thread> thread,
SharedPtr<WaitObject> object) mutable {
ASSERT(thread->status == THREADSTATUS_WAIT_HLE_EVENT);
callback(thread, context, reason);

View File

@ -45,4 +45,4 @@ void Shutdown() {
Kernel::MemoryShutdown();
}
} // namespace
} // namespace Kernel

View File

@ -126,7 +126,8 @@ void HandleSpecialMapping(VMManager& address_space, const AddressMapping& mappin
mapping_limit <= area.vaddr_base + area.size;
});
if (area == std::end(memory_areas)) {
LOG_ERROR(Loader, "Unhandled special mapping: address=0x%08" PRIX32 " size=0x%" PRIX32
LOG_ERROR(Loader,
"Unhandled special mapping: address=0x%08" PRIX32 " size=0x%" PRIX32
" read_only=%d unk_flag=%d",
mapping.address, mapping.size, mapping.read_only, mapping.unk_flag);
return;

View File

@ -151,4 +151,4 @@ void ResourceLimitsInit() {
void ResourceLimitsShutdown() {}
} // namespace
} // namespace Kernel

View File

@ -123,4 +123,4 @@ void ResourceLimitsInit();
// Destroys the resource limits
void ResourceLimitsShutdown();
} // namespace
} // namespace Kernel

View File

@ -52,4 +52,4 @@ ResultVal<s32> Semaphore::Release(s32 release_count) {
return MakeResult<s32>(previous_count);
}
} // namespace
} // namespace Kernel

View File

@ -4,8 +4,8 @@
#pragma once
#include <queue>
#include <string>
#include <queue>
#include "common/common_types.h"
#include "core/hle/kernel/kernel.h"
#include "core/hle/kernel/wait_object.h"
@ -56,4 +56,4 @@ private:
~Semaphore() override;
};
} // namespace
} // namespace Kernel

View File

@ -50,4 +50,4 @@ std::tuple<SharedPtr<ServerPort>, SharedPtr<ClientPort>> ServerPort::CreatePortP
return std::make_tuple(std::move(server_port), std::move(client_port));
}
} // namespace
} // namespace Kernel

View File

@ -72,4 +72,4 @@ private:
~ServerPort() override;
};
} // namespace
} // namespace Kernel

View File

@ -9,4 +9,4 @@ namespace Kernel {
Session::Session() {}
Session::~Session() {}
}
} // namespace Kernel

View File

@ -24,4 +24,4 @@ public:
ServerSession* server = nullptr; ///< The server endpoint of the session.
SharedPtr<ClientPort> port; ///< The port that this session is associated with (optional).
};
}
} // namespace Kernel

View File

@ -129,4 +129,4 @@ private:
~SharedMemory() override;
};
} // namespace
} // namespace Kernel

View File

@ -288,7 +288,6 @@ static ResultCode WaitSynchronization1(Handle handle, s64 nano_seconds) {
thread->wakeup_callback = [](ThreadWakeupReason reason, SharedPtr<Thread> thread,
SharedPtr<WaitObject> object) {
ASSERT(thread->status == THREADSTATUS_WAIT_SYNCH_ANY);
if (reason == ThreadWakeupReason::Timeout) {
@ -378,7 +377,6 @@ static ResultCode WaitSynchronizationN(s32* out, VAddr handles_address, s32 hand
thread->wakeup_callback = [](ThreadWakeupReason reason, SharedPtr<Thread> thread,
SharedPtr<WaitObject> object) {
ASSERT(thread->status == THREADSTATUS_WAIT_SYNCH_ALL);
if (reason == ThreadWakeupReason::Timeout) {
@ -439,7 +437,6 @@ static ResultCode WaitSynchronizationN(s32* out, VAddr handles_address, s32 hand
thread->wakeup_callback = [](ThreadWakeupReason reason, SharedPtr<Thread> thread,
SharedPtr<WaitObject> object) {
ASSERT(thread->status == THREADSTATUS_WAIT_SYNCH_ANY);
if (reason == ThreadWakeupReason::Timeout) {
@ -591,7 +588,6 @@ static ResultCode ReplyAndReceive(s32* index, VAddr handles_address, s32 handle_
thread->wakeup_callback = [](ThreadWakeupReason reason, SharedPtr<Thread> thread,
SharedPtr<WaitObject> object) {
ASSERT(thread->status == THREADSTATUS_WAIT_SYNCH_ANY);
ASSERT(reason == ThreadWakeupReason::Signal);
@ -770,7 +766,8 @@ static ResultCode CreateThread(Handle* out_handle, u32 priority, u32 entry_point
Core::System::GetInstance().PrepareReschedule();
LOG_TRACE(Kernel_SVC, "called entrypoint=0x%08X (%s), arg=0x%08X, stacktop=0x%08X, "
LOG_TRACE(Kernel_SVC,
"called entrypoint=0x%08X (%s), arg=0x%08X, stacktop=0x%08X, "
"threadpriority=0x%08X, processorid=0x%08X : created handle=0x%08X",
entry_point, name.c_str(), arg, stack_top, priority, processor_id, *out_handle);

View File

@ -111,4 +111,4 @@ void TimersInit() {
void TimersShutdown() {}
} // namespace
} // namespace Kernel

View File

@ -76,4 +76,4 @@ void TimersInit();
/// Tears down the timer variables
void TimersShutdown();
} // namespace
} // namespace Kernel

View File

@ -18,7 +18,7 @@ namespace Service {
namespace FS {
enum class MediaType : u32;
}
}
} // namespace Service
namespace Service {
namespace AM {

View File

@ -306,7 +306,8 @@ void Module::Interface::SendParameter(Kernel::HLERequestContext& ctx) {
Kernel::SharedPtr<Kernel::Object> object = rp.PopGenericObject();
std::vector<u8> buffer = rp.PopStaticBuffer();
LOG_DEBUG(Service_APT, "called src_app_id=0x%08X, dst_app_id=0x%08X, signal_type=0x%08X,"
LOG_DEBUG(Service_APT,
"called src_app_id=0x%08X, dst_app_id=0x%08X, signal_type=0x%08X,"
"buffer_size=0x%08X",
static_cast<u32>(src_app_id), static_cast<u32>(dst_app_id),
static_cast<u32>(signal_type), buffer_size);
@ -392,7 +393,8 @@ void Module::Interface::CancelParameter(Kernel::HLERequestContext& ctx) {
rb.Push(apt->applet_manager->CancelParameter(check_sender, sender_appid, check_receiver,
receiver_appid));
LOG_DEBUG(Service_APT, "called check_sender=%u, sender_appid=0x%08X, "
LOG_DEBUG(Service_APT,
"called check_sender=%u, sender_appid=0x%08X, "
"check_receiver=%u, receiver_appid=0x%08X",
check_sender, static_cast<u32>(sender_appid), check_receiver,
static_cast<u32>(receiver_appid));

View File

@ -111,7 +111,8 @@ void RegisterPrivateClientCert(Service::Interface* self) {
cmd_buff[2] = (buff2_size << 4 | 0xA);
cmd_buff[3] = buff2_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
"translation1=0x%08X, buff1_addr=0x%08X, buff1_size=0x%08X, "
"translation2=0x%08X, buff2_addr=0x%08X, buff2_size=0x%08X",
unk_param1, unk_param2, translation1, buff1_addr, buff1_size, translation2,
@ -177,7 +178,8 @@ void RegisterTask(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, unk_param3, translation, buff_addr, buff_size);
}
@ -196,7 +198,8 @@ void UnregisterTask(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, translation, buff_addr, buff_size);
}
@ -215,7 +218,8 @@ void ReconfigureTask(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, translation, buff_addr, buff_size);
}
@ -263,7 +267,8 @@ void GetNsDataIdList(Service::Interface* self) {
cmd_buff[4] = (buff_size << 4 | 0xC);
cmd_buff[5] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"unk_param4=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, unk_param3, unk_param4, translation, buff_addr, buff_size);
@ -287,7 +292,8 @@ void GetOwnNsDataIdList(Service::Interface* self) {
cmd_buff[4] = (buff_size << 4 | 0xC);
cmd_buff[5] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"unk_param4=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, unk_param3, unk_param4, translation, buff_addr, buff_size);
@ -311,7 +317,8 @@ void GetNewDataNsDataIdList(Service::Interface* self) {
cmd_buff[4] = (buff_size << 4 | 0xC);
cmd_buff[5] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"unk_param4=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, unk_param3, unk_param4, translation, buff_addr, buff_size);
@ -335,7 +342,8 @@ void GetOwnNewDataNsDataIdList(Service::Interface* self) {
cmd_buff[4] = (buff_size << 4 | 0xC);
cmd_buff[5] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"unk_param4=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, unk_param3, unk_param4, translation, buff_addr, buff_size);
@ -355,7 +363,8 @@ void SendProperty(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, translation, buff_addr, buff_size);
}
@ -373,7 +382,8 @@ void SendPropertyHandle(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -392,7 +402,8 @@ void ReceiveProperty(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xC);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, buff_size=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, buff_size=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X",
unk_param1, buff_size, translation, buff_addr);
}
@ -411,7 +422,8 @@ void UpdateTaskInterval(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, translation, buff_addr, buff_size);
}
@ -429,7 +441,8 @@ void UpdateTaskCount(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) buff_size=0x%08X, unk_param2=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) buff_size=0x%08X, unk_param2=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X",
buff_size, unk_param2, translation, buff_addr);
}
@ -448,7 +461,8 @@ void GetTaskInterval(Service::Interface* self) {
cmd_buff[3] = (buff_size << 4 | 0xA);
cmd_buff[4] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -467,7 +481,8 @@ void GetTaskCount(Service::Interface* self) {
cmd_buff[3] = (buff_size << 4 | 0xA);
cmd_buff[4] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -486,7 +501,8 @@ void GetTaskServiceStatus(Service::Interface* self) {
cmd_buff[3] = (buff_size << 4 | 0xA);
cmd_buff[4] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -504,7 +520,8 @@ void StartTask(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -522,7 +539,8 @@ void StartTaskImmediate(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -540,7 +558,8 @@ void CancelTask(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -572,7 +591,8 @@ void GetTaskState(Service::Interface* self) {
cmd_buff[5] = (buff_size << 4 | 0xA);
cmd_buff[6] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) buff_size=0x%08X, unk_param2=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) buff_size=0x%08X, unk_param2=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X",
buff_size, unk_param2, translation, buff_addr);
}
@ -593,7 +613,8 @@ void GetTaskResult(Service::Interface* self) {
cmd_buff[5] = (buff_size << 4 | 0xA);
cmd_buff[6] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -614,7 +635,8 @@ void GetTaskCommErrorCode(Service::Interface* self) {
cmd_buff[5] = (buff_size << 4 | 0xA);
cmd_buff[6] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -635,7 +657,8 @@ void GetTaskStatus(Service::Interface* self) {
cmd_buff[3] = (buff_size << 4 | 0xA);
cmd_buff[4] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, unk_param3, translation, buff_addr, buff_size);
}
@ -655,7 +678,8 @@ void GetTaskError(Service::Interface* self) {
cmd_buff[3] = (buff_size << 4 | 0xA);
cmd_buff[4] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, translation, buff_addr, buff_size);
}
@ -674,7 +698,8 @@ void GetTaskInfo(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, translation, buff_addr, buff_size);
}
@ -705,7 +730,8 @@ void GetNsDataHeaderInfo(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xC);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, unk_param3, translation, buff_addr, buff_size);
}
@ -728,7 +754,8 @@ void ReadNsData(Service::Interface* self) {
cmd_buff[4] = (buff_size << 4 | 0xC);
cmd_buff[5] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"unk_param4=0x%08X, translation=0x%08X, "
"buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, unk_param3, unk_param4, translation, buff_addr, buff_size);
@ -822,7 +849,8 @@ void RegisterStorageEntry(Service::Interface* self) {
cmd_buff[0] = IPC::MakeHeader(0x2F, 0x1, 0);
cmd_buff[1] = RESULT_SUCCESS.raw;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"unk_param4=0x%08X, unk_param5=0x%08X",
unk_param1, unk_param2, unk_param3, unk_param4, unk_param5);
}
@ -849,7 +877,8 @@ void SetStorageOption(Service::Interface* self) {
cmd_buff[0] = IPC::MakeHeader(0x31, 0x1, 0);
cmd_buff[1] = RESULT_SUCCESS.raw;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
"unk_param3=0x%08X, unk_param4=0x%08X",
unk_param1, unk_param2, unk_param3, unk_param4);
}
@ -880,7 +909,8 @@ void StartBgImmediate(Service::Interface* self) {
cmd_buff[2] = (buff_size << 4 | 0xA);
cmd_buff[3] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) buff_size=0x%08X, unk_param2=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) buff_size=0x%08X, unk_param2=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -899,7 +929,8 @@ void GetTaskActivePriority(Service::Interface* self) {
cmd_buff[3] = (buff_size << 4 | 0xA);
cmd_buff[4] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) buff_size=0x%08X, unk_param2=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) buff_size=0x%08X, unk_param2=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X",
unk_param1, translation, buff_addr, buff_size);
}
@ -919,7 +950,8 @@ void RegisterImmediateTask(Service::Interface* self) {
cmd_buff[3] = (buff_size << 4 | 0xA);
cmd_buff[4] = buff_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, unk_param3=0x%08X, "
"translation=0x%08X, buff_addr=0x%08X, buff_size=0x%08X",
unk_param1, unk_param2, unk_param3, translation, buff_addr, buff_size);
}
@ -943,7 +975,8 @@ void SetTaskQuery(Service::Interface* self) {
cmd_buff[2] = (buff2_size << 4 | 0xA);
cmd_buff[3] = buff2_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
"translation1=0x%08X, buff1_addr=0x%08X, buff1_size=0x%08X, "
"translation2=0x%08X, buff2_addr=0x%08X, buff2_size=0x%08X",
unk_param1, unk_param2, translation1, buff1_addr, buff1_size, translation2,
@ -969,7 +1002,8 @@ void GetTaskQuery(Service::Interface* self) {
cmd_buff[2] = (buff2_size << 4 | 0xC);
cmd_buff[3] = buff2_addr;
LOG_WARNING(Service_BOSS, "(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
LOG_WARNING(Service_BOSS,
"(STUBBED) unk_param1=0x%08X, unk_param2=0x%08X, "
"translation1=0x%08X, buff1_addr=0x%08X, buff1_size=0x%08X, "
"translation2=0x%08X, buff2_addr=0x%08X, buff2_size=0x%08X",
unk_param1, unk_param2, translation1, buff1_addr, buff1_size, translation2,

View File

@ -728,7 +728,8 @@ void Module::Interface::SetDetailSize(Kernel::HLERequestContext& ctx) {
rb.Push(ERROR_INVALID_ENUM_VALUE);
}
LOG_DEBUG(Service_CAM, "called, camera_select=%u, width=%u, height=%u, crop_x0=%u, crop_y0=%u, "
LOG_DEBUG(Service_CAM,
"called, camera_select=%u, width=%u, height=%u, crop_x0=%u, crop_y0=%u, "
"crop_x1=%u, crop_y1=%u, context_select=%u",
camera_select.m_val, resolution.width, resolution.height, resolution.crop_x0,
resolution.crop_y0, resolution.crop_x1, resolution.crop_y1, context_select.m_val);

View File

@ -90,7 +90,7 @@ struct ConsoleCountryInfo {
u8 country_code; ///< The country code of the console
};
static_assert(sizeof(ConsoleCountryInfo) == 4, "ConsoleCountryInfo must be exactly 4 bytes");
}
} // namespace
static const ConsoleModelInfo CONSOLE_MODEL = {NINTENDO_3DS_XL, {0, 0, 0}};
static const u8 CONSOLE_LANGUAGE = LANGUAGE_EN;

View File

@ -236,7 +236,8 @@ static void RegisterInterruptEvents(Service::Interface* self) {
}
if (interrupt_events.HasTooManyEventsRegistered()) {
LOG_INFO(Service_DSP, "Ran out of space to register interrupts (Attempted to register "
LOG_INFO(Service_DSP,
"Ran out of space to register interrupts (Attempted to register "
"type=%u, pipe=%u, event_handle=0x%08X)",
type_index, pipe_index, event_handle);
cmd_buff[1] = ResultCode(ErrorDescription::InvalidResultValue, ErrorModule::DSP,
@ -294,7 +295,8 @@ static void WriteProcessPipe(Service::Interface* self) {
AudioCore::DspPipe pipe = static_cast<AudioCore::DspPipe>(pipe_index);
if (IPC::StaticBufferDesc(size, 1) != cmd_buff[3]) {
LOG_ERROR(Service_DSP, "IPC static buffer descriptor failed validation (0x%X). pipe=%u, "
LOG_ERROR(Service_DSP,
"IPC static buffer descriptor failed validation (0x%X). pipe=%u, "
"size=0x%X, buffer=0x%08X",
cmd_buff[3], pipe_index, size, buffer);
cmd_buff[0] = IPC::MakeHeader(0, 1, 0);

View File

@ -87,7 +87,8 @@ void File::Read(Kernel::HLERequestContext& ctx) {
offset += file->offset;
if (offset + length > backend->GetSize()) {
LOG_ERROR(Service_FS, "Reading from out of bounds offset=0x%" PRIx64
LOG_ERROR(Service_FS,
"Reading from out of bounds offset=0x%" PRIx64
" length=0x%08X file_size=0x%" PRIx64,
offset, length, backend->GetSize());
}

View File

@ -438,7 +438,8 @@ void FS_USER::CreateExtSaveData(Kernel::HLERequestContext& ctx) {
u32 icon_size = rp.Pop<u32>();
auto icon_buffer = rp.PopMappedBuffer();
LOG_WARNING(Service_FS, "(STUBBED) savedata_high=%08X savedata_low=%08X unknown=%08X "
LOG_WARNING(Service_FS,
"(STUBBED) savedata_high=%08X savedata_low=%08X unknown=%08X "
"files=%08X directories=%08X size_limit=%016" PRIx64 " icon_size=%08X",
save_high, save_low, unknown, directories, files, size_limit, icon_size);
@ -663,7 +664,8 @@ void FS_USER::SetSaveDataSecureValue(Kernel::HLERequestContext& ctx) {
// TODO: Generate and Save the Secure Value
LOG_WARNING(Service_FS, "(STUBBED) called, value=0x%016" PRIx64 " secure_value_slot=0x%08X "
LOG_WARNING(Service_FS,
"(STUBBED) called, value=0x%016" PRIx64 " secure_value_slot=0x%08X "
"unqiue_id=0x%08X title_variation=0x%02X",
value, secure_value_slot, unique_id, title_variation);

View File

@ -261,30 +261,25 @@ ResultCode SetBufferSwap(u32 screen_id, const FrameBufferInfo& info) {
PAddr phys_address_left = Memory::VirtualToPhysicalAddress(info.address_left);
PAddr phys_address_right = Memory::VirtualToPhysicalAddress(info.address_right);
if (info.active_fb == 0) {
WriteSingleHWReg(
base_address +
4 * static_cast<u32>(GPU_REG_INDEX(framebuffer_config[screen_id].address_left1)),
WriteSingleHWReg(base_address + 4 * static_cast<u32>(GPU_REG_INDEX(
framebuffer_config[screen_id].address_left1)),
phys_address_left);
WriteSingleHWReg(
base_address +
4 * static_cast<u32>(GPU_REG_INDEX(framebuffer_config[screen_id].address_right1)),
WriteSingleHWReg(base_address + 4 * static_cast<u32>(GPU_REG_INDEX(
framebuffer_config[screen_id].address_right1)),
phys_address_right);
} else {
WriteSingleHWReg(
base_address +
4 * static_cast<u32>(GPU_REG_INDEX(framebuffer_config[screen_id].address_left2)),
WriteSingleHWReg(base_address + 4 * static_cast<u32>(GPU_REG_INDEX(
framebuffer_config[screen_id].address_left2)),
phys_address_left);
WriteSingleHWReg(
base_address +
4 * static_cast<u32>(GPU_REG_INDEX(framebuffer_config[screen_id].address_right2)),
WriteSingleHWReg(base_address + 4 * static_cast<u32>(GPU_REG_INDEX(
framebuffer_config[screen_id].address_right2)),
phys_address_right);
}
WriteSingleHWReg(base_address +
4 * static_cast<u32>(GPU_REG_INDEX(framebuffer_config[screen_id].stride)),
info.stride);
WriteSingleHWReg(
base_address +
4 * static_cast<u32>(GPU_REG_INDEX(framebuffer_config[screen_id].color_format)),
WriteSingleHWReg(base_address + 4 * static_cast<u32>(GPU_REG_INDEX(
framebuffer_config[screen_id].color_format)),
info.format);
WriteSingleHWReg(
base_address + 4 * static_cast<u32>(GPU_REG_INDEX(framebuffer_config[screen_id].active_fb)),

View File

@ -333,7 +333,9 @@ void Module::Interface::GetGyroscopeLowCalibrateParam(Kernel::HLERequestContext&
const s16 param_unit = 6700; // an approximate value taken from hw
GyroscopeCalibrateParam param = {
{0, param_unit, -param_unit}, {0, param_unit, -param_unit}, {0, param_unit, -param_unit},
{0, param_unit, -param_unit},
{0, param_unit, -param_unit},
{0, param_unit, -param_unit},
};
rb.PushRaw(param);

View File

@ -21,7 +21,7 @@
namespace Kernel {
class Event;
class SharedMemory;
}
} // namespace Kernel
namespace CoreTiming {
class EventType;
@ -335,5 +335,5 @@ void InstallInterfaces(SM::ServiceManager& service_manager);
/// Reload input devices. Used when input configuration changed
void ReloadInputDevices();
}
}
} // namespace HID
} // namespace Service

View File

@ -72,21 +72,77 @@ ExtraHID::ExtraHID(SendFunc send_func) : IRDevice(send_func) {
// and loaded from somewhere.
calibration_data = std::array<u8, 0x40>{{
// 0x00
0x00, 0x00, 0x08, 0x80, 0x85, 0xEB, 0x11, 0x3F,
0x00,
0x00,
0x08,
0x80,
0x85,
0xEB,
0x11,
0x3F,
// 0x08
0x85, 0xEB, 0x11, 0x3F, 0xFF, 0xFF, 0xFF, 0xF5,
0x85,
0xEB,
0x11,
0x3F,
0xFF,
0xFF,
0xFF,
0xF5,
// 0x10
0xFF, 0x00, 0x08, 0x80, 0x85, 0xEB, 0x11, 0x3F,
0xFF,
0x00,
0x08,
0x80,
0x85,
0xEB,
0x11,
0x3F,
// 0x18
0x85, 0xEB, 0x11, 0x3F, 0xFF, 0xFF, 0xFF, 0x65,
0x85,
0xEB,
0x11,
0x3F,
0xFF,
0xFF,
0xFF,
0x65,
// 0x20
0xFF, 0x00, 0x08, 0x80, 0x85, 0xEB, 0x11, 0x3F,
0xFF,
0x00,
0x08,
0x80,
0x85,
0xEB,
0x11,
0x3F,
// 0x28
0x85, 0xEB, 0x11, 0x3F, 0xFF, 0xFF, 0xFF, 0x65,
0x85,
0xEB,
0x11,
0x3F,
0xFF,
0xFF,
0xFF,
0x65,
// 0x30
0xFF, 0x00, 0x08, 0x80, 0x85, 0xEB, 0x11, 0x3F,
0xFF,
0x00,
0x08,
0x80,
0x85,
0xEB,
0x11,
0x3F,
// 0x38
0x85, 0xEB, 0x11, 0x3F, 0xFF, 0xFF, 0xFF, 0x65,
0x85,
0xEB,
0x11,
0x3F,
0xFF,
0xFF,
0xFF,
0x65,
}};
hid_polling_callback_id =

View File

@ -16,7 +16,7 @@
namespace Kernel {
class Event;
class SharedMemory;
}
} // namespace Kernel
namespace CoreTiming {
class EventType;

View File

@ -251,7 +251,8 @@ void IR_USER::InitializeIrNopShared(Kernel::HLERequestContext& ctx) {
rb.Push(RESULT_SUCCESS);
LOG_INFO(Service_IR, "called, shared_buff_size=%u, recv_buff_size=%u, "
LOG_INFO(Service_IR,
"called, shared_buff_size=%u, recv_buff_size=%u, "
"recv_buff_packet_count=%u, send_buff_size=%u, "
"send_buff_packet_count=%u, baud_rate=%u",
shared_buff_size, recv_buff_size, recv_buff_packet_count, send_buff_size,

View File

@ -12,7 +12,7 @@
namespace Kernel {
class Event;
class SharedMemory;
}
} // namespace Kernel
namespace CoreTiming {
class EventType;

View File

@ -25,18 +25,27 @@ const std::array<int, 17> CROHelper::ENTRY_SIZE{{
1, // code
1, // data
1, // module name
sizeof(SegmentEntry), sizeof(ExportNamedSymbolEntry), sizeof(ExportIndexedSymbolEntry),
sizeof(SegmentEntry),
sizeof(ExportNamedSymbolEntry),
sizeof(ExportIndexedSymbolEntry),
1, // export strings
sizeof(ExportTreeEntry), sizeof(ImportModuleEntry), sizeof(ExternalRelocationEntry),
sizeof(ImportNamedSymbolEntry), sizeof(ImportIndexedSymbolEntry),
sizeof(ExportTreeEntry),
sizeof(ImportModuleEntry),
sizeof(ExternalRelocationEntry),
sizeof(ImportNamedSymbolEntry),
sizeof(ImportIndexedSymbolEntry),
sizeof(ImportAnonymousSymbolEntry),
1, // import strings
sizeof(StaticAnonymousSymbolEntry), sizeof(InternalRelocationEntry),
sizeof(StaticAnonymousSymbolEntry),
sizeof(InternalRelocationEntry),
sizeof(StaticRelocationEntry),
}};
const std::array<CROHelper::HeaderField, 4> CROHelper::FIX_BARRIERS{{
Fix0Barrier, Fix1Barrier, Fix2Barrier, Fix3Barrier,
Fix0Barrier,
Fix1Barrier,
Fix2Barrier,
Fix3Barrier,
}};
VAddr CROHelper::SegmentTagToAddress(SegmentTag segment_tag) const {
@ -209,12 +218,24 @@ ResultCode CROHelper::RebaseHeader(u32 cro_size) {
// verifies that all offsets are in the correct order
constexpr std::array<HeaderField, 18> OFFSET_ORDER = {{
CodeOffset, ModuleNameOffset, SegmentTableOffset, ExportNamedSymbolTableOffset,
ExportTreeTableOffset, ExportIndexedSymbolTableOffset, ExportStringsOffset,
ImportModuleTableOffset, ExternalRelocationTableOffset, ImportNamedSymbolTableOffset,
ImportIndexedSymbolTableOffset, ImportAnonymousSymbolTableOffset, ImportStringsOffset,
StaticAnonymousSymbolTableOffset, InternalRelocationTableOffset,
StaticRelocationTableOffset, DataOffset, FileSize,
CodeOffset,
ModuleNameOffset,
SegmentTableOffset,
ExportNamedSymbolTableOffset,
ExportTreeTableOffset,
ExportIndexedSymbolTableOffset,
ExportStringsOffset,
ImportModuleTableOffset,
ExternalRelocationTableOffset,
ImportNamedSymbolTableOffset,
ImportIndexedSymbolTableOffset,
ImportAnonymousSymbolTableOffset,
ImportStringsOffset,
StaticAnonymousSymbolTableOffset,
InternalRelocationTableOffset,
StaticRelocationTableOffset,
DataOffset,
FileSize,
}};
u32 prev_offset = GetField(OFFSET_ORDER[0]);

View File

@ -195,7 +195,8 @@ void RO::LoadCRO(Kernel::HLERequestContext& ctx, bool link_on_load_bug_fix) {
VAddr crr_address = rp.Pop<u32>();
auto process = rp.PopObject<Kernel::Process>();
LOG_DEBUG(Service_LDR, "called (%s), cro_buffer_ptr=0x%08X, cro_address=0x%08X, cro_size=0x%X, "
LOG_DEBUG(Service_LDR,
"called (%s), cro_buffer_ptr=0x%08X, cro_address=0x%08X, cro_size=0x%X, "
"data_segment_address=0x%08X, zero=%d, data_segment_size=0x%X, "
"bss_segment_address=0x%08X, bss_segment_size=0x%X, auto_link=%s, "
"fix_level=%d, crr_address=0x%08X",

View File

@ -21,7 +21,10 @@ enum : u32 {
static DaemonMask daemon_bit_mask = DaemonMask::Default;
static DaemonMask default_daemon_bit_mask = DaemonMask::Default;
static std::array<DaemonStatus, 4> daemon_status = {
DaemonStatus::Idle, DaemonStatus::Idle, DaemonStatus::Idle, DaemonStatus::Idle,
DaemonStatus::Idle,
DaemonStatus::Idle,
DaemonStatus::Idle,
DaemonStatus::Idle,
};
static ExclusiveState exclusive_state = ExclusiveState::None;
static u32 scan_interval = DEFAULT_SCAN_INTERVAL;

View File

@ -554,7 +554,8 @@ void NWM_UDS::RecvBeaconBroadcastData(Kernel::HLERequestContext& ctx) {
rb.Push(RESULT_SUCCESS);
rb.PushMappedBuffer(out_buffer);
LOG_DEBUG(Service_NWM, "called out_buffer_size=0x%08X, wlan_comm_id=0x%08X, id=0x%08X,"
LOG_DEBUG(Service_NWM,
"called out_buffer_size=0x%08X, wlan_comm_id=0x%08X, id=0x%08X,"
"unk1=0x%08X, unk2=0x%08X, offset=%zu",
out_buffer_size, wlan_comm_id, id, unk1, unk2, cur_buffer_size);
}

View File

@ -187,7 +187,8 @@ static std::vector<u8> DecryptDataFrame(const std::vector<u8>& encrypted_payload
d.SpecifyDataLengths(aad.size(), encrypted_payload.size() - 8, 0);
CryptoPP::AuthenticatedDecryptionFilter df(
d, nullptr, CryptoPP::AuthenticatedDecryptionFilter::MAC_AT_END |
d, nullptr,
CryptoPP::AuthenticatedDecryptionFilter::MAC_AT_END |
CryptoPP::AuthenticatedDecryptionFilter::THROW_EXCEPTION);
// put aad
df.ChannelPut(CryptoPP::AAD_CHANNEL, aad.data(), aad.size());

View File

@ -10,7 +10,7 @@
namespace Kernel {
class HLERequestContext;
class Semaphore;
}
} // namespace Kernel
namespace Service {
namespace SM {

View File

@ -88,5 +88,5 @@ SSL_C::SSL_C() {
Register(FunctionTable);
}
} // namespace SSL_C
} // namespace SSL
} // namespace Service

View File

@ -230,7 +230,8 @@ void Y2R_U::SetSendingY(Kernel::HLERequestContext& ctx) {
IPC::RequestBuilder rb = rp.MakeBuilder(1, 0);
rb.Push(RESULT_SUCCESS);
LOG_DEBUG(Service_Y2R, "called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
LOG_DEBUG(Service_Y2R,
"called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
"src_process_id=%u",
conversion.src_Y.image_size, conversion.src_Y.transfer_unit, conversion.src_Y.gap,
process->process_id);
@ -248,7 +249,8 @@ void Y2R_U::SetSendingU(Kernel::HLERequestContext& ctx) {
IPC::RequestBuilder rb = rp.MakeBuilder(1, 0);
rb.Push(RESULT_SUCCESS);
LOG_DEBUG(Service_Y2R, "called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
LOG_DEBUG(Service_Y2R,
"called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
"src_process_id=%u",
conversion.src_U.image_size, conversion.src_U.transfer_unit, conversion.src_U.gap,
process->process_id);
@ -267,7 +269,8 @@ void Y2R_U::SetSendingV(Kernel::HLERequestContext& ctx) {
IPC::RequestBuilder rb = rp.MakeBuilder(1, 0);
rb.Push(RESULT_SUCCESS);
LOG_DEBUG(Service_Y2R, "called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
LOG_DEBUG(Service_Y2R,
"called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
"src_process_id=%u",
conversion.src_V.image_size, conversion.src_V.transfer_unit, conversion.src_V.gap,
process->process_id);
@ -286,7 +289,8 @@ void Y2R_U::SetSendingYUYV(Kernel::HLERequestContext& ctx) {
IPC::RequestBuilder rb = rp.MakeBuilder(1, 0);
rb.Push(RESULT_SUCCESS);
LOG_DEBUG(Service_Y2R, "called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
LOG_DEBUG(Service_Y2R,
"called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
"src_process_id=%u",
conversion.src_YUYV.image_size, conversion.src_YUYV.transfer_unit,
conversion.src_YUYV.gap, process->process_id);
@ -345,7 +349,8 @@ void Y2R_U::SetReceiving(Kernel::HLERequestContext& ctx) {
IPC::RequestBuilder rb = rp.MakeBuilder(1, 0);
rb.Push(RESULT_SUCCESS);
LOG_DEBUG(Service_Y2R, "called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
LOG_DEBUG(Service_Y2R,
"called image_size=0x%08X, transfer_unit=%hu, transfer_stride=%hu, "
"dst_process_id=%u",
conversion.dst.image_size, conversion.dst.transfer_unit, conversion.dst.gap,
static_cast<u32>(dst_process->process_id));

View File

@ -13,5 +13,5 @@ AESKey Lrot128(const AESKey& in, u32 rot);
AESKey Add128(const AESKey& a, const AESKey& b);
AESKey Xor128(const AESKey& a, const AESKey& b);
} // namspace AES
} // namespace AES
} // namespace HW

View File

@ -19,10 +19,10 @@ namespace {
// 3DS uses a non-standard AES-CCM algorithm, so we need to derive a sub class from the standard one
// and override with the non-standard part.
using CryptoPP::lword;
using CryptoPP::AES;
using CryptoPP::CCM_Final;
using CryptoPP::CCM_Base;
using CryptoPP::CCM_Final;
using CryptoPP::lword;
template <bool T_IsEncryption>
class CCM_3DSVariant_Final : public CCM_Final<AES, CCM_MAC_SIZE, T_IsEncryption> {
public:

View File

@ -33,5 +33,5 @@ void SetNormalKey(size_t slot_id, const AESKey& key);
bool IsNormalKeyAvailable(size_t slot_id);
AESKey GetNormalKey(size_t slot_id);
} // namspace AES
} // namespace AES
} // namespace HW

View File

@ -439,7 +439,8 @@ inline void Write(u32 addr, const T data) {
if (config.is_texture_copy) {
TextureCopy(config);
LOG_TRACE(HW_GPU, "TextureCopy: 0x%X bytes from 0x%08X(%u+%u)-> "
LOG_TRACE(HW_GPU,
"TextureCopy: 0x%X bytes from 0x%08X(%u+%u)-> "
"0x%08X(%u+%u), flags 0x%08X",
config.texture_copy.size, config.GetPhysicalInputAddress(),
config.texture_copy.input_width * 16, config.texture_copy.input_gap * 16,
@ -447,7 +448,8 @@ inline void Write(u32 addr, const T data) {
config.texture_copy.output_gap * 16, config.flags);
} else {
DisplayTransfer(config);
LOG_TRACE(HW_GPU, "DisplayTransfer: 0x%08x(%ux%u)-> "
LOG_TRACE(HW_GPU,
"DisplayTransfer: 0x%08x(%ux%u)-> "
"0x%08x(%ux%u), dst format %x, flags 0x%08X",
config.GetPhysicalInputAddress(), config.input_width.Value(),
config.input_height.Value(), config.GetPhysicalOutputAddress(),

View File

@ -331,4 +331,4 @@ void Init();
/// Shutdown hardware
void Shutdown();
} // namespace
} // namespace GPU

View File

@ -98,4 +98,4 @@ void Shutdown() {
LCD::Shutdown();
LOG_DEBUG(HW, "shutdown OK");
}
}
} // namespace HW

Some files were not shown because too many files have changed in this diff Show More