Michael Scire
ddfc16731f
ams/hos: add enum support for 13.2.0
2021-11-30 16:22:57 -08:00
Léo Lam
496adb0018
Minor header fixes to reduce parsing issues with Clang ( #1700 )
...
* Work around Clang's incomplete C++20 support for omitting typename
* vapours: fix Clang error about missing return in constexpr function
* stratosphere: fix call to non-constexpr strlen in constexpr function
strlen being constexpr is a non-compliant GCC extension; Clang
explicitly rejects it: https://reviews.llvm.org/D23692
* stratosphere: add a bunch of missing override specifiers
* stratosphere: work around Clang consteval bug
Minimal example: https://godbolt.org/z/MoM64v93M
The issue seems to be that Clang does not consider f(x) to be a
constant expression if x comes from a template argument that isn't
a non-type auto template argument (???)
We can work around this by relaxing GetMessageHeaderForCheck (by using
constexpr instead of consteval). This produces no functional changes
because the result of GetMessageHeaderForCheck() is assigned to a
constexpr variable, so the result is guaranteed to be computed
at compile-time.
* stratosphere: fix missing require clauses in definitions
GCC not requiring the require clauses to be repeated for member
definitions is actually a compiler bug:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96830
Clang rejects declarations with missing require clauses.
* Fix ALWAYS_INLINE_LAMBDA and parameter list relative order
While GCC doesn't seem to care about the position of the always_inline
attribute relative to the parameter list, Clang is very picky
and requires the attribute to appear after the parameter list
(and before a trailing return type)
* stratosphere: fix static constexpr member variable with incomplete type
GCC accepts this for some reason (because of the lambda?) but Clang
correctly rejects this.
2021-11-06 18:19:34 -07:00
Michael Scire
47218f0da8
ams: overhaul fs.mitm romfs ownership, bump to 1.2.4
2021-11-04 13:38:41 -07:00
Michael Scire
0bbc907907
git subrepo pull (merge) libraries
...
subrepo:
subdir: "libraries"
merged: "8764bd406"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "12d0ba172"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-11-03 23:59:17 -07:00
Michael Scire
4a4a1f0e87
ams: bump api version to 1.2.3
2021-11-03 23:57:30 -07:00
Michael Scire
2161365f4f
ams: update for awareness of architecture revision
2021-10-31 11:18:17 -07:00
Michael Scire
94e18b8c93
ams: bump version to 1.2.2
2021-10-29 17:47:01 -07:00
Michael Scire
4e92687cab
sprofile: various correctness fixes.
2021-10-29 17:38:44 -07:00
Michael Scire
cb38b0b929
ams: bump version to 1.2.1
2021-10-26 01:09:16 -07:00
Michael Scire
0e81eac9d1
sprof: update for 13.1.0 (format version 1)
2021-10-26 00:51:44 -07:00
Michael Scire
a14dc6ed89
crypto: implement md5, which now used by sprof
2021-10-25 23:15:50 -07:00
Michael Scire
1d5f66be56
kern: implement 13.1.0 kernel changes
2021-10-25 17:34:47 -07:00
Michael Scire
d8a2b47b0a
util: add trait/macro for is_constexpr_constructible
2021-10-25 17:31:14 -07:00
Michael Scire
0a58e803be
kern/test: add wip qemu-virt board support to mesosphere
2021-10-25 17:31:14 -07:00
Michael Scire
aaa3770806
kern: optimize timespan -> tick codegen, improve .text layout
2021-10-24 01:16:24 -07:00
SciresM
36e4914be8
kern: avoid constexpr init for many objects (avoids unnecessary memory clear) ( #1668 )
2021-10-23 15:25:20 -07:00
Michael Scire
20716cb3de
kern: use new AtomicRef, use Atomic<bool>
2021-10-20 13:29:38 -07:00
Michael Scire
aed9d3f535
util: better match true std::atomic semantics
2021-10-20 11:02:17 -07:00
Michael Scire
d74f364107
kern/util: use custom atomics wrapper to substantially improve codegen
2021-10-19 15:24:15 -07:00
Michael Scire
f3b532070b
kern: update scheduler for 13.0.0 change, fix some ctz/clz bugs
2021-10-19 01:20:28 -07:00
Michael Scire
889d843718
ams: improve offsetof style consistency
2021-10-18 00:17:13 -07:00
Michael Scire
ec6d1a92ef
util: improve (and use) offsetof that's """standard compliant"""
2021-10-17 21:45:02 -07:00
Michael Scire
ad4c794aea
constexpr: resign ourselves to gcc dropping void -> T support
2021-10-17 02:39:16 -07:00
Michael Scire
26c02e2019
kern/util: update structure layouts to match Nintendo (saves 0x10 per KThread/KSession)
2021-10-16 16:13:10 -07:00
Michael Scire
d27fe8a229
util: fix consteval CountTrailingZeroes impl
2021-10-11 13:15:11 -07:00
Michael Scire
3bee3e77ca
ams: bump api verrsion pre-emptively to 1.2.0
2021-10-11 01:00:07 -07:00
Michael Scire
d9dc04318d
loader: refactor ro manager/improve accuracy
2021-10-10 18:22:32 -07:00
Michael Scire
d8a36e39f2
spl: refactor for accuracy/move into libstrat
2021-10-10 12:57:36 -07:00
Michael Scire
ce28591ab2
svc: use m_ for member variables
2021-10-09 16:14:00 -07:00
Michael Scire
00116450c3
sdmmc: use m_ for member variables
2021-10-09 15:59:59 -07:00
Michael Scire
67a45c97ef
exo/vapours: refactor member variables to m_ over this->
2021-10-09 15:40:06 -07:00
Michael Scire
1ab0bd1765
ams: replace most remaining operator & with std::addressof
2021-10-09 14:49:53 -07:00
Adubbz
303c6eb5f9
settings: implement KeyValueStore ( #1659 )
...
* settings: implement KeyValueStore and dependencies
* settings: update KeyValueStore for recent refactoring
* settings: address feedback
2021-10-09 09:16:40 -07:00
Michael Scire
7ca83c9d3b
libstrat: enable -Wextra, -Werror
...
This caught an embarrassingly large number of bugs.
2021-10-06 15:20:48 -07:00
Michael Scire
4866e80769
svc: refactor/rename MemoryInfo fields
2021-10-05 15:16:54 -07:00
Michael Scire
719ead824e
strat: remove map namespace, svc: add address space defs
2021-10-05 12:22:34 -07:00
Michael Scire
d0041a33ac
strat: prefer os::NativeHandle to Handle/svc::Handle where sensible
2021-10-04 17:12:32 -07:00
Michael Scire
6f680fe63b
strat: use svc:: over ::svc
2021-10-04 14:54:13 -07:00
Michael Scire
77fe5cf6f5
ams: the copyright^H^H^H^H^H^H^Hmplex plane is the algebraic closure of the reals
2021-10-04 12:59:10 -07:00
Michael Scire
9ecec1b935
result: improve Includes codegen
2021-10-01 15:12:38 -07:00
Michael Scire
7444a68cd1
os: adopt multiwait naming over waitable
2021-09-30 19:00:47 -07:00
Michael Scire
41ab4c2c68
stratosphere: use SdkMutex/SdkRecursiveMutex over Mutex
2021-09-29 22:52:50 -07:00
Michael Scire
9b04ff0f54
ams-libs: AMS_ASSERT no longer invokes expression
2021-09-29 21:32:40 -07:00
Michael Scire
d00cec38b0
kern: use util::BitFlagSet for capability flags
2021-09-27 11:37:27 -07:00
Michael Scire
a3d9efb18c
ams: bump version to 1.1.1
2021-09-24 09:16:30 -07:00
Michael Scire
7cdfa68dd5
svc: bump supported version
2021-09-19 10:34:31 -07:00
Michael Scire
f6fb5f2c8d
kern/svc: implement IoPool/Region svc support
2021-09-19 10:34:31 -07:00
Michael Scire
ce7dd55257
svc/kern/dd: remove MapDeviceAddressSpace()
2021-09-19 10:34:31 -07:00
Michael Scire
fdf008108c
kern: add new KMemoryState
2021-09-19 10:34:31 -07:00
Michael Scire
6407786059
kern: update GetInfo logic for tick count InfoTypes
2021-09-19 10:34:31 -07:00