aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-10-15Merge pull request #2981 from lioncash/copyRodrigo Locatti
gl_shader_decompiler: Minor cleanup-related changes
2019-10-15vk_shader_decompiler: Resolve fallthrough within ExprDecompiler's ↵Lioncash
ExprCondCode operator() This would previously result in NeverExecute and UnusedIndex being treated as regular predicates.
2019-10-15gl_shader_decompiler: Resolve fallthrough within ExprDecompiler's ↵Lioncash
ExprCondCode operator() This would previously result in NeverExecute and UnusedIndex being treated as regular predicates.
2019-10-15texture_cache: Avoid unnecessary surface copies within PickStrategy() and ↵Lioncash
TryReconstructSurface() We can take these by const reference and avoid making unnecessary copies, preventing some atomic reference count increments and decrements.
2019-10-15control_flow: Silence truncation warningsLioncash
This can be trivially fixed by making the input size a size_t. CFGRebuildState's constructor parameter is already a std::size_t, so this just makes the size type fully conform with it.
2019-10-15gl_shader_decompiler: Make ExprDecompiler's GetResult() a const member functionLioncash
This is only ever used to read, but not write, the resulting string, so we can enforce this by making it a const member function.
2019-10-15gl_shader_decompiler: Use a std::string_view with GetDeclarationWithSuffix()Lioncash
This allows the function to be completely non-allocating for inputs of all sizes (i.e. there's no heap cost for an input to convert to a std::string_view).
2019-10-15gl_shader_decompiler: Fold flow_var constant into GetFlowVariable()Lioncash
This is only ever used within this function, so we can narrow it's scope down.
2019-10-15gl_shader_decompiler: Mark ASTDecompiler/ExprDecompiler parameters as const ↵Lioncash
references where applicable These member functions don't actually modify the input parameter, so we can make this explicit with the use of const.
2019-10-15gl_shader_decompiler: Pass by reference to GenerateTextureArgument()Lioncash
Avoids an unnecessary atomic reference count increment and decrement.
2019-10-15gl_shader_decompiler: Use std::holds_alternative within GenerateTexture()Lioncash
This only ever queries if the type exists within the variant, but doesn't actually do anything with the return value. We can just use std::holds_alternative for this use case.
2019-10-15shader/node: std::move Meta instance within OperationNode constructorLioncash
Allows usages of the constructor to avoid an unnecessary copy.
2019-10-15gl_shader_decompiler: Avoid unnecessary copies of MetaImageLioncash
MetaImage contains a std::vector, so copying here could result in unnecessary reallocations. Given the operation lives throughout the entire scope, this is safe to do.
2019-10-15maxwell_3d: Silence truncation warningsLioncash
A trivial warning caused by not using size_t as the argument types instead of u32.
2019-10-15Merge pull request #2972 from lioncash/systembunnei
{bcat, gpu, nvflinger}: Remove trivial usages of the global system accessor
2019-10-15video_core/gpu: Remove use of the global system accessorLioncash
We can just make use of the reference member variable instead of accessing the global system instance.
2019-10-15bcat: Remove use of global system accessorsLioncash
Removes all uses of the global system accessor within the BCAT interface.
2019-10-15video_core/texture_cache: Amend Doxygen referencesLioncash
Amends the doxygen comments so that they properly resolve. While we're at it, we can correct some typos and fix up some of the comments' formatting in order to make them slightly nicer to read.
2019-10-15common/algorithm: Add description comment indicating intended algorithmsLioncash
Makes it explicit that the header is intended for iterator-based algorithms that can ideally operate on any type.
2019-10-15common: Rename binary_find.h to algorithm.hLioncash
Makes the header more general for other potential algorithms in the future. While we're at it, include a missing <functional> include to satisfy the use of std::less.
2019-10-15Kernel Thread: Cleanup THREADPROCESSORID_DONT_UPDATE.Fernando Sahmkow
2019-10-15Kernel: Address Feedback 2Fernando Sahmkow
2019-10-15Kernel: Clang FormatFernando Sahmkow
2019-10-15Kernel: Reverse global accessor removal.Fernando Sahmkow
2019-10-15Kernel: Address Feedback.Fernando Sahmkow
2019-10-15Kernel Scheduler: Make sure the global scheduler shutdowns correctly.Fernando Sahmkow
2019-10-15Kernel_Thread: Eliminate most global accessors.Fernando Sahmkow
2019-10-15KernelSVC: Assert that condition variable address is aligned to 4 bytes.Fernando Sahmkow
2019-10-15Kernel: Correct Paused schedulingFernando Sahmkow
2019-10-15Kernel: Corrections to Wait Objects clearing in which a thread could still ↵Fernando Sahmkow
be signalled after a timeout or a cancel.
2019-10-15Kernel: Correct redundant yields to only advance time forward.Fernando Sahmkow
2019-10-15Kernel: Corrections to ModifyByWaitingCountAndSignalToAddressIfEqualFernando Sahmkow
2019-10-15Kernel: Correct Results in Condition Variables and MutexesFernando Sahmkow
2019-10-15Kernel: Clang FormatFernando Sahmkow
2019-10-15Kernel: Remove global system accessor from WaitObjectFernando Sahmkow
2019-10-15Scheduler: Implement Yield Count and Core migration on Thread Preemption.Fernando Sahmkow
2019-10-15Scheduler: Corrections to YieldAndBalanceLoad and Yield bombing protection.Fernando Sahmkow
2019-10-15Kernel: Initial implementation of thread preemption.Fernando Sahmkow
2019-10-15Scheduler: Add protections for Yield bombingFernando Sahmkow
In case of redundant yields, the scheduler will now idle the core for it's timeslice, in order to avoid continuously yielding the same thing over and over.
2019-10-15Kernel: Style and CorrectionsFernando Sahmkow
2019-10-15Correct PrepareRescheduleFernando Sahmkow
2019-10-15Comment and reorganize the schedulerFernando Sahmkow
2019-10-15Add PrepareReschedule where required.Fernando Sahmkow
2019-10-15Correct compiling errors and addapt to the new interface.Fernando Sahmkow
2019-10-15Correct Supervisor Calls to work with the new scheduler,Fernando Sahmkow
2019-10-15Redesign CPU Cores to work with the new schedulerFernando Sahmkow
2019-10-15Add interfacing to the Global SchedulerFernando Sahmkow
2019-10-15Addapt thread class to the new SchedulerFernando Sahmkow
2019-10-15Implement a new Core SchedulerFernando Sahmkow
2019-10-15Merge pull request #2965 from FernandoS27/fair-core-timingbunnei
Core Timing: Rework Core Timing to run all cores evenly.