[*] Suppress a number of antisemitic clang warnings
This commit is contained in:
parent
ad5bbee6b2
commit
92ebafecab
@ -89,7 +89,7 @@ namespace Aurora::Async
|
||||
{
|
||||
AU_LOCK_GUARD(AuStaticCast<ThreadPool>(unlocker.pool)->rwlock_->AsReadable());
|
||||
|
||||
if (pHandle = AuStaticCast<ThreadPool>(unlocker.pool)->GetThreadHandle(unlocker))
|
||||
if ((pHandle = AuStaticCast<ThreadPool>(unlocker.pool)->GetThreadHandle(unlocker)))
|
||||
{
|
||||
AU_LOCK_GUARD(pHandle->externalFencesLock);
|
||||
if (pHandle->exitingflag2)
|
||||
|
@ -1235,7 +1235,7 @@ namespace Aurora::Console::ConsoleStd
|
||||
|
||||
SysAssert(AuTryInsert(gCanonicalBuffer, canInput));
|
||||
}
|
||||
else if ((c == 27))
|
||||
else if (c == 27)
|
||||
{
|
||||
CanFlushLines();
|
||||
i++;
|
||||
|
@ -506,7 +506,7 @@ namespace Aurora::Crypto::X509
|
||||
[&](mbedtls_x509_crt &ca)
|
||||
{
|
||||
|
||||
if (failed |= IsHighRiskStateIssuer(ca))
|
||||
if ((failed |= IsHighRiskStateIssuer(ca)))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@ -399,7 +399,7 @@ namespace Aurora::IO
|
||||
|
||||
auto uInterframeProgress = this->GetBytesProcessedInterframe();
|
||||
|
||||
if (bIsCullingLastFrame = (this->uBytesWrittenLimit_ && canRead2 + uInterframeProgress > this->uBytesWrittenLimit_))
|
||||
if ((bIsCullingLastFrame = ((this->uBytesWrittenLimit_ && canRead2 + uInterframeProgress > this->uBytesWrittenLimit_))))
|
||||
{
|
||||
auto uLastFrameBytes = this->uBytesWrittenLimit_ - uInterframeProgress;
|
||||
auto uAbsDataToRead = AuMin<AuUInt>(canRead, uLastFrameBytes);
|
||||
|
@ -80,11 +80,11 @@ namespace Aurora::IO
|
||||
AuSPtr<AuLoop::ILoopQueue> ToQueue() override;
|
||||
void ReleaseAllWatches() override;
|
||||
|
||||
bool ConfigureNoDeferredTicks(bool bOption);
|
||||
bool ConfigureNoDeferredTicks(bool bOption) override;
|
||||
|
||||
bool HasItems() override;
|
||||
|
||||
void WakeupThread();
|
||||
void WakeupThread() override;
|
||||
|
||||
bool CheckThread();
|
||||
|
||||
|
@ -51,34 +51,18 @@ namespace Aurora::Threading::Primitives
|
||||
|
||||
static const auto kBoolRequiredLateSet = true;
|
||||
|
||||
// Future (Reece): I got future plans
|
||||
static const auto kShiftCountByBits = 8u;
|
||||
// ...otherwise
|
||||
// assume undefined behaviour past:
|
||||
// * bit zero is used for atomic bit test and yield loops
|
||||
// ( keyed events are an optimization mechanism for Windows XPs spinloop i had accidentally recreated in xenus. )
|
||||
// ( originally, nt yielding sucked with the most barebones spinlock being dumb a hypervisor-unaware, smt-aware, spinner. )
|
||||
// ( keyed events would then go in these spinners to serve as an early futex as early back as the year 2000 (?). )
|
||||
// ( that does, in fact, mean the free-toddlers crying about how 'windows stole muh kernels totally originally idea' is entirely wrong at each sub-point. )
|
||||
// ( though, keyed didn't see much use until Windows Vistas synch primitives were built on top of them. )
|
||||
// ( infamously missing 100ths scale nanosecond yimeouts and an inablity to lock with a timeout. )
|
||||
// ( raymond chen once claimed they didnt make it to xp because they werent fast enough )
|
||||
// ( raymond chen once claimed a "con" of keyedevents were that they were linear )
|
||||
// ( problem is, as far as i can tell, they didnt really change. whats worse, WakeOnAddress (windows 8+)
|
||||
// ( ...inherits the issue of not having relative/abs nanosecond scale timeouts AND the issue the primitives sucking. )
|
||||
// ( WakeOnAddress is nothing more than keyed events 2.0 - but with userland list keeping. )
|
||||
// ( scratch the concept of how i implement WakeOnAddress with lists, how older nts waited with lists under lock, )
|
||||
// ( they use hashmaps with "le meme lockless" interactions which are surly less expensive than reusing tls allocations ?! )
|
||||
// ( whether or not its even faster is still up for debate. its just easier to use. )
|
||||
// ( keyed events would then go in these spinners to serve as an early futex as early back as the year 2001-3 (?). )
|
||||
// * bit one might be used under some niche versions of windows
|
||||
// (hearsay paranoia)
|
||||
// i actually have zero reason to believe windows ever implemented lock-awareness into the kernel
|
||||
// i actually have no reason to believe windows ever implemented lock-awareness into the kernel
|
||||
// i think it might be fine to skip the whole bit zero thing, but still, im going to say keep the min=2
|
||||
// worst case scenario, we end up using these bits.
|
||||
// ....
|
||||
// =8 is future proof
|
||||
// =2 is recommended
|
||||
// =0 would require a bit of a require. i think this is how other people use keyed events nowadays
|
||||
// worst case scenario, we end up using these bits (we did).
|
||||
|
||||
}
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user