Lioncash
8346f86ee4
IR: Remove unnecessary semicolon on namespace brace
2017-01-16 19:54:42 -05:00
Lioncash
67fc73e82c
IR: Make getNumInsts return type size_t
...
There's no need to cast here.
2017-01-16 19:38:30 -05:00
Lioncash
459a6e73c3
IR: Remove unused function
2017-01-16 19:32:13 -05:00
Lioncash
cd12b2c55f
IR: Make IRBuilder uncopyable
...
Hiding and not implementing the copy constructor is a pre-C++11 thing.
It should also be noted that a copy constructor, as defined by the
language, contains a const qualifier on its parameter, so this wouldn't
have prevented copies from being performed.
2017-01-16 18:59:17 -05:00
Lioncash
a8b2dd7fc3
IR: Use std::array instead of raw C arrays
2017-01-16 18:54:30 -05:00
Lioncash
ef3e6de875
IR: Move implementation of the constructor and Reset into the cpp file
...
Neither of these are intended to be called extremely frequently to warrant
this.
2017-01-16 18:36:11 -05:00
Lioncash
47fc72f0a8
IR: Get rid of an unimplemented member function prototype
2017-01-16 18:11:54 -05:00
Lioncash
4f75590fdb
IR: Move private details below public details
2017-01-16 18:08:11 -05:00
Lioncash
43910e474b
IR_X86: Use member initializers where applicable for RegInfo
2017-01-16 17:29:09 -05:00
Lioncash
bc7374a5e1
IR_X86: Use std::array instead of raw C arrays in RegInfo
2017-01-16 17:29:09 -05:00
Lioncash
45f7883ed8
IR_X86: Make RegInfo uncopyable
...
Hiding and not implementing the copy constructor is a pre-C++11 thing.
It should also be noted that a copy constructor, as defined by the language,
contains a const qualifier on its parameter, so this wouldn't have
prevented copies from being performed.
It also follows that if the copy constructor is deleted, then copy
assignment should also be forbidden.
2017-01-16 17:27:03 -05:00
Lioncash
6788cb7266
HW/DSP: Correct prefixes of translation-unit-local variables
...
These aren't globals.
2017-01-16 14:53:37 -05:00
Lioncash
8cc4815fe2
HW/DSP: Hide the DSP state global
2017-01-16 14:14:03 -05:00
Lioncash
c6ec5de659
HW/DSP: Use member initializers with structs/unions where applicable
2017-01-15 16:03:12 -05:00
Lioncash
3848c2a018
MemoryView: Get rid of a type-punning cast from u32 to float
...
This is undefined behavior. The bits should be memcpyed.
2017-01-15 12:16:41 -05:00
Lioncash
2108bf1be6
MemoryView: Separate memory string composition from OnPaint
...
OnPaint should only care about drawing data, not directly creating
said data.
2017-01-15 12:13:08 -05:00
Lioncash
0a6f0dfb74
Common: Add bit utility header
...
This attempts to make some bit arithmetic more self-documenting and also
make it easier during review to identify potential off-by-one errors by
making it possible to just specify which bits are being extracted.
Functions both support the case where bits being extracted can vary and
fixed bit extraction. In the case the bits are fixed, compile-time asserts
are present to prevent accidental API usage at compile-time.
e.g. Instead of shifting and masking to get bits 10 to 15,
Common::ExtractBits<10, 15>(value) can just be done instead.
2017-01-14 11:16:02 -05:00
Lioncash
45415e1057
ColorUtil: Make decodeCI8image's pal parameter const
2017-01-13 17:07:26 -05:00
Lioncash
35cc4a4202
DSPInterpreter: Get rid of a #define constant
...
This constant isn't particularly helpful, mainly because it's not
applicable to all DSP instructions. Some instructions don't have encoding
space for registers, and not all instructions that do encode registers
have one at the first five bits.
This change also has the benefit of removing all includes to the
interpreter within the JIT code, which keeps them fully separate from one
another. Changes to the interpreter header won't require some of the JIT
code to be rebuilt.
2017-01-12 20:36:52 -05:00
Lioncash
0035a4ef3d
GCMemcard: Const-correctness changes
...
A few function reference and pointer parameters are only read from.
2017-01-12 20:01:19 -05:00
Lioncash
6f08ef9a25
IOFile: Get rid of IOFile's ReleaseHandle function
...
Transfer of handles should be done via std::move.
2017-01-12 12:34:06 -05:00
Lioncash
b760479f77
BreakPoints: Use std::any_of where applicable
2017-01-11 16:37:31 -05:00
Lioncash
e97953130d
BreakPoints: Use character literals for finding single characters
...
The single character find overload is better suited over the one for
finding character sequences.
2017-01-11 10:08:14 -05:00
Lioncash
4e649c60c0
BreakPoints: Make getters const member functions
...
Just const-correctness stuff. The returned collection can't be modified,
so this makes sense.
2017-01-11 10:08:14 -05:00
Lioncash
0f8bcf412d
BreakPoints: Rename variables
...
Drops Hungarian notation where applicable.Drops Hungarian notation where
applicable.
2017-01-11 10:08:11 -05:00
Lioncash
274ab8a262
BreakPoints: Make the memchecks class member private
...
There's no need to make this public.
2017-01-11 10:07:34 -05:00
Mat M
55b82e323c
Merge pull request #4537 from JosJuice/blob-open-less-files
...
Open less files when detecting/opening blobs
2017-01-11 08:30:16 -05:00
Lioncash
93c5c0213f
BreakPoints: Convert typedefs into using aliases
2017-01-11 07:59:43 -05:00
Lioncash
50ee01754e
BreakPoints: Add initializers for TBreakPoint and TWatch
...
Ensures all members are consistently initialized.
2017-01-11 07:55:43 -05:00
Lioncash
588374349f
BreakPoints: In-class initialize TMemCheck members
...
Same thing, less code.
2017-01-11 07:53:49 -05:00
Lioncash
ea8fc594a5
Common: Move BreakPoints into Core
...
BreakPoints utilizes the jit global variable, so this was making Core and
Common cyclical dependencies on one another.
2017-01-10 05:24:44 -05:00
Lioncash
37d10064b8
JitCache: Get rid of reliance on the JIT global variable
2017-01-09 04:43:06 -05:00
Lioncash
f75aab1a85
CachedInterpreter: Separate the block cache from CachedInterpreter
...
An interpreter is not a block cache. It may utilize a block cache, it may
contain a block cache but it *is not* A block cache.
2017-01-09 04:43:05 -05:00
Lioncash
eddccb3891
CachedInterpreter: Move to its own directory
2017-01-09 04:43:05 -05:00
Lioncash
2b8ede8dc6
JitCache: Move implementation details into the cpp file
2017-01-09 04:43:04 -05:00
Lioncash
cf18aeb1eb
JitCache: Move private class details below public details
...
Also organizes cpp file organization to match the function layout.
2017-01-09 04:42:59 -05:00
Lioncash
1dab2c8816
IOFile: Correct explicit operator bool semantics
...
The operator void* variant was m_good ? m_file : nullptr;
so this was leaving out the file handle check.
2017-01-08 22:52:44 -05:00
Lioncash
00baf193ac
CodeBlock: Const correctness for IsInSpace
2017-01-08 18:40:09 -05:00
Lioncash
27350dbf1c
Jit64Base: Use size_t to represent size in LogGeneratedX86
2017-01-07 21:57:19 -05:00
Lioncash
77756b44d5
Jit64Base: Const correctness for LogGeneratedX86
2017-01-07 21:53:06 -05:00
Lioncash
9d8e8652fb
CodeBlock: Get rid of implicit sign-conversion in AllocCodeSpace
...
Size is internally stored as a size_t, so having an int parameter
would cause implicit sign-conversion from a signed value to an
unsigned value to occur.
2017-01-07 19:05:06 -05:00
Lioncash
89da37b1c6
HotkeyInputConfigDialog: Move UI creation into named functions
...
The constructor shouldn't be used as a dumping ground for all UI-related
initialization. Doing so makes it somewhat more difficult to reason about
how certain UI elements get created. It also puts unrelated identifiers in
the same scope.
This separates the UI creation out so code relevant to each component
is self-contained.
2017-01-05 16:26:42 -05:00
Mat M
e7359f247b
Merge pull request #4595 from aldelaro5/add-debugger-hotkeys
...
Add debugger hotkeys
2017-01-05 14:33:10 -05:00
Mat M
6fe621f203
Merge pull request #4589 from ligfx/cleaninputconfigdiag
...
InputConfigDiag: move function bodies out of header
2017-01-05 14:29:35 -05:00
Mat M
0de4ad334f
Merge pull request #4605 from PEmu1/tas-gamecube-contro
...
Clarify GameCube Controller in TAS Input
2017-01-05 14:28:54 -05:00
Mat M
495580637f
Merge pull request #4606 from BhaaLseN/clang-format-union
...
specify custom brace style to fix unions
2017-01-05 14:27:27 -05:00
Mat M
9da6982ac3
Merge pull request #4608 from RisingFog/input_display_newlines
...
Add missing new lines for OSD
2017-01-05 14:25:24 -05:00
Mat M
189e5f87fb
Merge pull request #4612 from PEmu1/memcard-menu
...
Don't Use Abbreviation for "Memory Card"
2017-01-05 14:22:54 -05:00
Lioncash
a10bb15f17
HLE: Add explicit initializers for OSBreakPoints' stub entry
...
No behavior change, this just makes implicit values explicit.
2017-01-05 14:15:45 -05:00
Lioncash
2941468857
HLE: Align table formatting
2017-01-05 14:13:30 -05:00
Lioncash
a93861ab49
DiscScrubber: Don't take SFileInfo instances by value
...
Avoids unnecessary copies.
2017-01-04 20:12:49 -05:00
Lioncash
c52d1e735a
DiscScrubber: Use an unsigned loop index in ParseDisc
...
Prevents an implicit signed to unsigned conversion when assigning a
partition's group number.
2017-01-04 20:03:12 -05:00
Lioncash
6ff21c48cb
DiscScrubber: Correct printf specifiers
2017-01-04 19:56:39 -05:00
Lioncash
b1a2dec78a
DiscScrubber: Convert a #define into a typed constant
2017-01-04 19:53:31 -05:00
Lioncash
045a8400e6
IOFile: Make the move constructor and move assignment operator noexcept
...
Certain parts of the standard library try to determine whether or not a
transfer operation should either be a copy or a move. The prevalent notion
of move constructors/assignment operators is that they should not throw,
they simply move an already existing resource somewhere else.
This is typically done with 'std::move_if_noexcept'. Like the name says,
if a type's move constructor is noexcept, then the functions retrieves an
r-value reference (for move semantics), or an l-value (for copy semantics)
if it is not noexcept.
As IOFile deletes the copy constructor and copy assignment operators,
using IOFile with certain parts of the standard library can fail in
unexcepted ways (especially when used with various container
implementations). This prevents that.
2017-01-04 18:37:48 -05:00
Lioncash
9b8f5bce22
IOFile: Change 'operator void*' into 'explicit operator bool'
...
'operator void*' is basically a pre-C++11-ism that was used, as C++03
only had the notion of implicit type-conversion operators, but not explicit type
conversion operators (allowing implicit conversion of a file handle to
bool can go downhill pretty quickly).
2017-01-04 18:10:21 -05:00
Lioncash
c541e1099e
IOFile: Make class variables private
...
Internals shouldn't be directly exposed.
2017-01-04 17:48:46 -05:00
Lioncash
c21dad9e83
IOFile: Get rid of unnecessary unimplemented copy constructor/assignment operator.
...
IOFile already inherits NonCopyable.
2017-01-04 17:47:40 -05:00
Lioncash
5b1aae0cbf
DiscScrubber: Make struct and variable names conformant to the coding style
2017-01-04 17:04:41 -05:00
Lioncash
4a9bc2340b
DiscScrubber: Convert into a class
...
Allows potential multiple scrubbers to run at once. Also gets rid of the
need to explicitly clean up resources.
2017-01-04 16:06:21 -05:00
Lioncash
2cfc0dc8b6
DSPDisassembler: directly initialize AssemblerSettings struct members
...
Same thing, less code.
2017-01-04 12:53:22 -05:00
Lioncash
5518c6625b
PatchEngine: Get rid of a global variable
2017-01-03 18:59:33 -05:00
Lioncash
342b76a594
DSPJitRegCache: Make single argument constructor explicit
...
Prevents implicit conversions.
2017-01-02 15:03:31 -05:00
Lioncash
f8c6b3b5f1
JitRegCache: Move FlushMode enum into RegCache
...
This also makes it a strongly-typed enum.
Considering that the flushing mode is a trait/behavior for the register
cache, it doesn't really make sense to have the enum separate from it.
This also has the benefit of removing constants from global scope.
2017-01-02 13:43:37 -05:00
Lioncash
3b4290b5b7
DSPJitRegCache: Make class variables conform to the coding style
2017-01-02 12:16:29 -05:00
Mat M
3f5f7fc564
Merge pull request #4590 from hthh/macos-no-pch-fix
...
macOS: Add missing includes to fix no-PCH build
2017-01-01 20:27:30 -05:00
Mat M
b10a0de769
Merge pull request #4535 from lioncash/regcache
...
Jit64: Make register caches not rely on the global jit variable
2017-01-01 18:01:29 -05:00
Mat M
6c5063c76b
Merge pull request #4585 from lioncash/dspnamespace
...
DSP: Namespace remaining un-namespaced DSP code
2017-01-01 17:54:39 -05:00
Lioncash
3eb25cea6f
DSP: Namespace remaining un-namespaced DSP code
2016-12-31 17:20:14 -05:00
Lioncash
efbf261e97
DSPAnalyzer: Fix two clang warnings about sign mismatched types
2016-12-29 10:10:38 -05:00
Lioncash
2aefa29941
DSP: Add the interpreter to the DSP namespace
2016-12-29 07:05:17 -05:00
Lioncash
c79cc3f470
DSP: Namespace the JIT
2016-12-28 20:38:41 -05:00
Lioncash
407f3af8c3
JitRegCache: Get rid of reliance on the jit global variable
2016-12-28 17:52:58 -05:00
Lioncash
8ece485a2f
JitRegCache: Make member variables conform to our coding style
2016-12-28 17:47:26 -05:00
Lioncash
e291e8f1a7
JitRegCache: Convert #define macro into a typed constant
2016-12-28 17:47:26 -05:00
Lioncash
4ae23fc45c
JitRegCache: Remove unused typedefs
2016-12-28 17:47:26 -05:00
Lioncash
b629eb300a
JitRegCache: Remove unused Flush function
...
This was kind of a pointless function, considering the parameter wasn't
used at all, so the other Flush() function could have been just directly
used instead.
2016-12-28 17:47:26 -05:00
Lioncash
41d47dda93
JitRegCache: Move implementation details into the cpp file where applicable
...
Any future changes to these register cache functions won't require everything that includes the register cache header to also be recompiled.
2016-12-28 17:47:26 -05:00
Lioncash
d1fc694c02
JitRegCache: Move protected interface below public interface
2016-12-28 17:47:26 -05:00
Lioncash
1a34376f3a
JitRegCache: Separate FPURegCache and GPRRegCache into their own files
...
Keeps them separated from one another and makes it less annoying to find
member functions (which were previously spread out all over the place).
2016-12-28 17:47:25 -05:00
Mat M
4a4d629f0e
Merge pull request #4578 from ligfx/fixloaddefaults
...
ControllerEmu: Fix LoadDefaults to use ciface argument
2016-12-27 21:38:45 -05:00
Lioncash
5c938ed41f
DSPTables: Move function type aliases into DSPOPCTemplate
...
Gets two typedefs out of global scope
2016-12-27 18:31:42 -05:00
Lioncash
12e335025d
DSPEmitter: Make FlagsNeeded() a const member function
...
This doesn't modify any class data.
2016-12-26 21:18:24 -05:00
Lioncash
a8459fc189
DSPAnalyzer: Hide implementation details
...
Makes accessing flags a part of the function interface instead of exposing
an internal variable.
2016-12-26 21:18:18 -05:00
Lioncash
50b1fcb1ed
DSPEmitter: Initialize compileSR in the initializer list
2016-12-26 19:42:09 -05:00
Lioncash
f3d353a85d
DSPEmitter: Move typedefs into DSPEmitter
...
Keeps them associated with the emitter itself, rather than just letting
them sit in global scope.
2016-12-26 19:19:39 -05:00
Lioncash
646d96a216
DSPEmitter: Convert defines into typed constants
...
Also moves them into more qualified scopes where possible.
2016-12-26 19:16:01 -05:00
Lioncash
c37889efcb
DSPEmitter: Use std::vector instead of raw allocation
2016-12-26 19:03:35 -05:00
Lioncash
400d5f6940
DSPEmitter: In-class initialize variables
2016-12-26 18:07:15 -05:00
Mat M
1af9f68240
Merge pull request #4566 from JosJuice/charset-terminology
...
Remove incorrect usage of "ASCII" and "ANSI"
2016-12-26 15:40:45 -05:00
Lioncash
042045012b
DSPEmitter: Get rid of an unused member variable
2016-12-25 21:31:17 -05:00
Mat M
8c99f60026
Merge pull request #4504 from grp/osx-sdk
...
Remove dead code to set the path to the macOS SDK.
2016-12-25 17:57:49 -05:00
Mat M
7e3fc503f3
Merge pull request #4561 from rogersachan/master
...
Linted markdown for the README
2016-12-25 17:54:39 -05:00
Mat M
9c8e27e3bb
Merge pull request #4558 from JosJuice/volumedirectory-fst-sort
...
VolumeDirectory: Sort the FST
2016-12-25 17:38:58 -05:00
Mat M
81d452ecda
Merge pull request #4551 from JosJuice/movie-controller-comment
...
Movie: Replace incorrect name and comment for numControllers
2016-12-25 17:36:27 -05:00
Mat M
0304eb48a3
Merge pull request #4549 from JosJuice/game-inis-2016-12-24
...
Game INI updates
2016-12-25 17:35:30 -05:00
Mat M
40e36ebd1e
Merge pull request #4550 from linkmauve/no-readdir_r
...
Common: Replace deprecated readdir_r with readdir
2016-12-25 17:34:50 -05:00
Mat M
8ad6c3e911
Merge pull request #4555 from JosJuice/right-click-host-name
...
Fix player name not being loaded when using "Host with Netplay..."
2016-12-25 17:32:26 -05:00
Mat M
8da0396fc4
Merge pull request #4559 from JosJuice/volumedirectory-totalnamesize-local
...
VolumeDirectory: Make m_totalNameSize a local variable
2016-12-25 17:30:21 -05:00
Mat M
29ec069ac6
Merge pull request #4552 from JosJuice/pr-4461-translations
...
Mark strings added by PR #4461 for translation
2016-12-25 17:06:32 -05:00