978693559e
[*] QOL / Hardening / Optimizations / Bug fixes
...
(but not really. this is just some patchwork)
2024-10-02 00:47:44 +01:00
6e9e962c84
[*] AuLoop::WaitMultipleLoopSources optimizations (do not allocate so much, if we can), and
...
[*] Updated Loop.hpp comment
2024-09-28 23:14:48 +01:00
ff6409859f
[*] Fix C++17 build regressions
2024-09-27 22:50:04 +01:00
f059141505
[*] AuCmdLine::GetValue(...) (both variants) refactored to use views to help with future stability issues around AuStrings (and their allocator?)
2024-09-27 22:46:50 +01:00
7046ccec11
[*] Refactor some APIs to use string views instead of strings
...
[+] Added new shell dirs API
[+] AuOptional<AuROString> GetUserDocuments()
[+] AuOptional<AuROString> GetUserDownloads()
[+] AuOptional<AuROString> GetUserDesktop()
[+] AuOptional<AuROString> GetUserPhotos()
[+] AuOptional<AuROString> GetUserVideos()
[+] AuOptional<AuROString> GetUserMusic()
[*] Amend IPCHandle::InitFromSharing (use string view)
[*] AuFS devices API should now use string views
[*] AuProcess, Process APIs now use string views (ModuleLoadRequest, LoadModule, GetProcAddressEx, etc)
[*] AuProcess, Paths APIs now use string views (GetProcessDirectory, GetProcessFullPath, etc)
[*] Fix XP using common my documents vs local user documents
2024-09-24 18:59:54 +01:00
436d50a01f
[+] AuIO::IOPipeRequest::bReadEntireAllocation
...
[*] Fix 24. Hello IO regression
2024-09-17 18:23:49 +01:00
9acc56431a
[-] AuMemoryView
...
[-] AuMemory::Heap
[*] Use AuSetAllocator
[-] AuMemory::PmrCppHeapWrapper
2024-09-13 08:48:33 +01:00
ffb1cbb09b
[*] PmrCppHeapWrapper fixes
2024-09-10 04:46:13 +01:00
634eb35959
[+] IOConfig::bAPCUseCoroutineStack
2024-09-09 08:16:19 +01:00
89686eb022
[*] Use PMR allocators instead
2024-09-09 06:52:38 +01:00
0571aa8dd4
[+] AU_LOCK_GLOBAL_GUARD
...
[+] AuThreading::GetShutdownReadLock()
2024-09-09 03:46:38 +01:00
35761edaec
[+] AuIO::Loop::NewLSTimerHighResolution
...
[*] ILSTimer::UpdateTime -> ILSTimer::UpdateTimeWall
[*] ILSTimer::UpdateTimeNs -> ILSTimer::UpdateTimeWallNs
[+] ILSTimer::UpdateTimeSteady
[+] ILSTimer::UpdateTimeSteadyNs
2024-09-08 07:26:23 +01:00
4d4f5e2501
[+] ILoopSource::IsSignaledExt(...)
...
[+] ILoopSource::WaitOnExt(...)
[+] ILoopSource::WaitOnAbsExt(...)
2024-09-07 22:45:34 +01:00
77546b5098
[+] IRandomDevice::XXX has VecD variants
...
[*] Improve: IRandomDevice internal allocations when handling vector arrays
[*] Fix: NextArrayI64RangeInView
2024-09-05 22:50:02 +01:00
3472665c9f
[+] AuOutputOfs OutputOfResult should have a lock for multithread consumption
2024-09-05 18:20:12 +01:00
aafb64e740
[+] AuMemoryView::CopyInto
...
[+] AuMemoryView::CopyFrom
[+] AuMemoryViewStream::CopyStreamInto
[+] AuMemoryViewStream::CopyStreamFrom
2024-08-27 20:33:00 +01:00
d99c1032da
[*] Regression: AuROXTL string view has a different interpretation of what remove prefix/suffix should be. Fix SplitNewlines
...
[*] Harden SplitString & SplitStringDelm, do not splice UTF8 sequences
2024-08-22 19:15:51 +01:00
2c3c7b04e5
[*] Amend Loop.hpp comments
2024-08-11 22:22:43 +01:00
23a80b8039
[*] Refactor ConditionEx -> IFlexibleConditionVariable
2024-08-08 20:21:03 +01:00
adfca81335
[*] Fuck you
2024-08-08 20:17:52 +01:00
da7fd881a6
[*] Update behaviour of CppHeapWrapper to make it moron proof
2024-08-07 21:39:42 +01:00
9a855f36d0
[*] You fucking donut
2024-08-07 01:42:42 +01:00
57c5515173
[*] Linux: Harden recursive IO scheduling
2024-08-05 19:44:54 +01:00
55cac676f5
[+] AuLoop::NewSemaphoreEx with max count option for in-process (not ipc) limiting the total wakes.
...
This is required for Xbox, Xbox 360, and Win32 emulators deriving a mutex via a the NT semaphore primitive instead of the builtin binary semaphore (event) and mutex.
2024-08-05 15:57:13 +01:00
9956f1c153
[+] AuIO::Loop::kWaitMultipleFlagBreakAfterOne for Win32 WaitForMultipleObjects shim (we cannot return an array of indices to a win32 program)
2024-07-30 17:26:38 +01:00
ecf8dc6f0b
[+] AuRNG::IRandomDevice::...InView
...
[+] AuRNG::...InView
(amended mixed tabs)
2024-07-21 06:15:02 +01:00
8be1afe570
[+] AuMemory::Heap adapters for third party heap allocators
...
[+] AuMemory::HeapAdapterInterface to describe aforementioned heap allocators of a very limited API
[+] AuMemory::HeapAdapter[Unique,Shared,]
[+] HeapWin32Adapter to convert HANDLE hHeaps of win32s CreateHeap (RtlCreateHeap?) into AuMemory::Heaps
2024-07-19 09:06:56 +01:00
a995c37e81
[*] Fixup half-assed/rushed alloc class with alignment in the .hpp to .inl breakout commit ( ced9e0be
)
...
(sure, it cannot work to realign structs with c++ operator[] overloading; however, we need this to prevent excessive allocations when cloning a U8 memory view of alignment)
2024-07-19 09:01:20 +01:00
2628784ff6
[*] Refactor heap stats
2024-07-19 08:25:30 +01:00
1fb355520e
[*] Made AuMemoryViewRead/Writes to bytebuffer less ambiguous
2024-07-19 08:24:51 +01:00
2d2523e679
[*] Another build regression
2024-07-16 23:58:44 +01:00
8df3f6970b
[+] Heap::Clone(Heap *[, ...])
2024-07-15 00:16:13 +01:00
ced9e0be17
[*] Optimize global process heap aliases
...
[*] Split AuMemory::Heap impl into .inl file
2024-07-15 00:15:35 +01:00
3749702e34
[*] SharableByteBuffer constructors must be inline
2024-07-13 18:51:07 +01:00
e665720f24
[*] Update AuMemory::SharableByteBuffer to be useful with the transition to AuSPtr<AuMemoryViewXXX>'less APIs
2024-07-13 17:08:45 +01:00
3d652ed605
[*] af5c8e86c0
20hrs ago: AuSPtr<AuMemoryViewXXX>s werent fully eliminated
2024-07-13 16:34:44 +01:00
124e9d1d0a
[*] Fix main process heap fragmentation caused by shared pointer blocks, always allocate from within the heap object
2024-07-13 03:07:02 +01:00
af5c8e86c0
[*] AuSPtr<AuMemoryViewXXXX> is now an anti-pattern. After 3 fucking years, memory views of shared control blocks and atomic in use counters are properly utilized everywhere. We do not need generic superclasses to be safe anymore
2024-07-12 20:22:48 +01:00
d803f1547c
[+] Added AuAsync per thread io group singleton
...
[*] Move static functions out of the thread pool interface. no idea how i had successful builds before
2024-07-12 17:22:07 +01:00
daf4552eb2
[*] Update AuByteBuffer::Pad to include bUpdateWriteHead argument. broke previous behavior bc this is more convenient and old users were already doing this after the fact
2024-07-09 03:11:10 +01:00
4ab5b4cba7
[*] After just shy of 1y, introduce FS devices into the default include tree. Linux will be brought up soon enough
2024-07-04 23:27:04 +01:00
f2e3ceef99
[+] Au[Futex]Countdown
2024-06-30 05:40:13 +01:00
0555e8cc32
[*] Update: WakeOnAddress.hpp comments
2024-06-30 05:13:55 +01:00
27b18c0a37
[+] MemoryView::ToSharedControlBlock
...
[+] et al
2024-06-29 01:12:07 +01:00
114976a71d
[*] im a smort boi
2024-06-19 22:17:55 +01:00
5b19341186
[*] Improve regressed AuWoA time to wake
2024-06-19 22:05:17 +01:00
9805a57647
[+] MemoryView::Clone()
...
[+] MemoryView::CloneSelf()
2024-06-11 07:25:48 +01:00
7fdcdb7568
[*] Fuck you
2024-06-10 14:08:58 +01:00
ee9e318511
[*] Fix: AuByteBuffer::Resize could resize with wrong ringbuffer alignmnet or linear if a fast path fails
...
[+] ByteBuffer::ByteBuffer(const MemoryViewRead &readView, AuUInt uAlignment, bool circular, bool expandable
2024-06-03 04:26:18 +01:00
3241ebb349
[+] The missing AuByteBuffer::ByteBuffer(const MemoryViewRead &readView, ...) constructor
2024-06-02 00:13:56 +01:00