Niels Boehm
56158ca176
Replace MMU mask tests with dedicated function.
...
The efficient function (that is nearly the same as
https://graphics.stanford.edu/~seander/bithacks.html#DetermineIfPowerOf2 )
replaces one loop based instance (which also reused the xx variable
afterwards, whereas it should have used htabmask instead) and one
instance using the population count a.k.a. Hamming weigth.
2017-06-22 20:22:53 +02:00
Tillmann Karras
9a2bef97da
JitCache: use SymbolDB names as JIT block names
2017-06-18 06:58:44 +01:00
Lioncash
dd4203bec8
Core: Remove unnecessary includes
...
Also moves a cpp file's related header file to the top of the inclusions if it isn't already there.
2017-06-15 18:52:22 -04:00
JosJuice
cf94ce6305
Add a namespace to OpenFStream
...
For consistency with the other functions in FileUtil.h.
2017-06-15 21:34:04 +02:00
JosJuice
f09ceaa735
Move IOFile to a separate file
...
Reduces the number of files that need to be recompiled
when making changes to FileUtil.h.
2017-06-15 21:33:50 +02:00
Shawn Hoffman
50f34f8b05
jit64: silence signedness comparison warnings
2017-06-07 20:09:44 -07:00
Shawn Hoffman
ef9090d7da
powerpc: silence an int->u32 init warning
2017-06-07 20:09:43 -07:00
Shawn Hoffman
a97d079138
jit64: quiet variable init warnings
2017-06-07 20:09:43 -07:00
Shawn Hoffman
f730b775b6
quiet warnings about possibly-uninitialized variable usage
2017-06-07 19:52:07 -07:00
Shawn Hoffman
e1a3e41bf3
fix various instances of -1 being assigned to unsigned types
2017-06-07 19:52:07 -07:00
Lioncash
b676edd80c
Core: include what you use
...
Eliminates a swath of indirectly included standard headers
2017-06-07 01:20:48 -04:00
shuffle2
096399d371
quick UB fix for 3c0bdd74
2017-06-06 03:49:01 -07:00
Tillmann Karras
7702771d61
Interpreter: simplify srawx/srawix
...
This also avoids -Wint-in-bool-context warnings in GCC 7.
2017-06-06 11:05:33 +01:00
Leo Lam
5d6074f157
Merge pull request #5366 from sepalani/set-sym-size
...
CodeView: Set Symbol Size/End Address added
2017-06-03 19:00:45 +02:00
shuffle2
3443454ba2
Merge pull request #5271 from JosJuice/allow-aslr
...
Allow (but don't force) ASLR
2017-06-02 21:53:02 -07:00
Leo Lam
933767f1bd
Merge pull request #5475 from sepalani/map-vaddr
...
PPCSymbolDB: Fix LoadMap corrupting virtual addresses
2017-05-26 10:21:38 +02:00
Sepalani
82695ccd99
PPCSymbolDB: Fix LoadMap corrupting virtual addresses
2017-05-24 21:08:15 +01:00
Leo Lam
98b6446249
Merge pull request #5459 from sepalani/code
...
PPCSymbolDB: Split SaveMap function
2017-05-24 13:59:28 +02:00
Markus Wick
4870e4119b
Merge pull request #5435 from sepalani/add-function
...
PPCSymbolDB: Remove biased address check
2017-05-23 14:39:36 +02:00
Lioncash
c3bab0b0e7
SignatureDB: Remove unnecessary header
2017-05-21 17:39:44 -04:00
Lioncash
bbe1e643fb
SignatureDB: in-class initialize DBFunc members
2017-05-21 17:39:42 -04:00
Lioncash
d0089191e1
SignatureDB: default the format handler destructor
2017-05-21 17:39:41 -04:00
Lioncash
5301efddd0
SignatureDB: Remove unnecessary qualifiers and virtual keywords
2017-05-21 17:39:40 -04:00
Lioncash
3c94962332
SignatureDB: Move two functions into the cpp file
...
These are implementation details.
2017-05-21 17:39:34 -04:00
Sepalani
56f2d523dd
PPCSymbolDB: Split SaveMap function
...
Rewrite the code map file generation
2017-05-21 01:00:36 +01:00
JosJuice
4b4cf509f8
Remove code for only allocating low memory
...
This is unnecessary when we have position-independent code.
2017-05-20 09:35:53 +02:00
JosJuice
256a0cf4db
Remove JITIL
2017-05-19 22:21:07 +02:00
Sepalani
e0231d0b30
PPCSymbolDB: Remove biased address check
...
The appropriate check is already done by PPCAnalyst::AnalyzeFunction.
2017-05-17 19:37:27 +01:00
Sepalani
aa65ca4b6b
PPCAnalyst: Use the proper RAM check
2017-05-17 02:10:26 +01:00
Lioncash
198d686a41
MEGASignatureDB: Add missing override specifiers
2017-05-14 16:20:45 -04:00
Sepalani
40c243df28
PPCAnalyst: Fix off by one instruction
2017-05-07 04:56:16 +01:00
Sepalani
93ba6aa9f2
PPCAnalyst: Function calls without link added
2017-05-07 04:55:36 +01:00
Sepalani
95d0a48759
PPCAnalyst: EvaluateBranchTarget improved
2017-05-07 04:55:36 +01:00
Sepalani
7f552581e7
CodeView: Set Symbol Size added
2017-05-06 13:18:00 +01:00
degasus
90d551e0d1
JitArm64: Drop ps_res.
...
The accuracy doesn't match ppc, and worse, it doesn't set the error flags if the input is zero.
Lets stop to ship broken instructions, so right now, the interpreter is the closest one.
2017-05-03 23:48:14 +02:00
Tillmann Karras
5c93c98c05
JitArm64: fix ps_res
2017-05-03 08:02:35 +01:00
Michael Maltese
89eb019788
SignatureDB: fix prevented copy elision
...
Clang warning:
```
Source/Core/Core/PowerPC/SignatureDB/SignatureDB.cpp:22:17: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
: m_handler(std::move(CreateFormatHandler(handler)))
^
Source/Core/Core/PowerPC/SignatureDB/SignatureDB.cpp:22:17: note: remove std::move call here
: m_handler(std::move(CreateFormatHandler(handler)))
^~~~~~~~~~ ~
```
2017-05-02 20:01:32 -07:00
Mat M
7c3905a612
Merge pull request #5140 from sepalani/signature_db
...
SignatureDB: Rewrite FormatHandler API
2017-05-02 19:23:46 -04:00
Michael Maltese
b5223fb15f
Jit64: fix braces warning in Jit_Integer
...
Fixes a warning:
```
Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp:54:45: warning: suggest braces around initialization of subobject [-Wmissing-braces]
static const std::array<u8, 4> ovtable = {0, 0, XER_SO_MASK, XER_SO_MASK};
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ }
```
2017-05-02 14:30:28 -07:00
Sepalani
2f0f63fdbc
PPCAnalyst: Prevent a crash when outside the RAM
2017-04-30 02:45:10 +01:00
Anthony
ecf5f7d5f4
Merge pull request #4469 from sepalani/fix_xfb_debug
...
[HLE] Fixes XFB issues in Debug Mode
2017-04-29 12:48:53 -07:00
Anthony
cb2e7a6cac
Merge pull request #5240 from sepalani/find_handlers
...
PPCAnalyst: Find interrupt/exception handlers
2017-04-29 12:44:41 -07:00
Anthony
4d3a794942
Merge pull request #5238 from sepalani/ppc-analyst-rfi
...
PPCAnalyst: Support return from interrupt
2017-04-29 12:44:18 -07:00
Sepalani
e8f52e467b
PPCAnalyst: Find interrupt/exception handlers
2017-04-29 20:21:21 +01:00
Sepalani
7cee62bbb3
PPCAnalyst: Support return from interrupt
2017-04-29 20:16:31 +01:00
Sepalani
dd039cd311
PPCAnalyst: Skip nop alignment
2017-04-29 20:10:52 +01:00
Sepalani
3f2f3679cd
PPCAnalyst: Prevent PanicAlert due to invalid read
2017-04-29 20:08:25 +01:00
Sepalani
5f81226d8d
SignatureDB: MEGA FormatHandler added
2017-04-29 19:50:21 +01:00
Sepalani
82afda94f4
SignatureDB: Use explicit construction
2017-04-29 19:50:20 +01:00
Sepalani
a9b52ce91b
SignatureDB: Rewrite FormatHandler API
2017-04-29 19:50:20 +01:00