Commit graph

76 commits

Author SHA1 Message Date
Henrik Rydgård
0ecd72416b Reduce overhead of logging further. 2025-03-25 23:09:11 +01:00
Henrik Rydgård
cb180bf781 A lot of log cleanup. It's quite useful as a forcing function to find missing logs. 2025-03-05 17:02:46 +01:00
Henrik Rydgård
1f5cfe82ed Fix issue with hleLogDebugOrError where the return value argument got repeated.
Not good when the argument is a function call..
2025-03-05 11:24:44 +01:00
Henrik Rydgård
2af7a047d2 HLE logging; Use function metadata to decide the type for logging the return type. 2025-01-29 10:14:54 +01:00
Henrik Rydgård
28b2c7f540 HLE log rename part 1: Remove duplicate log functions. Return type should be determined by metadata. 2025-01-29 09:45:39 +01:00
Henrik Rydgård
e8be4bbaae Improve code generation for HLE debug logging
Should shrink code size a bit, not expecting much performance change.

This avoids emitting a DoLog call when MAX_LOGLEVEL excludes the log statement,
just like for regular logs.
2025-01-28 17:04:20 +01:00
Henrik Rydgård
25cf60e5e1 Buildfix 2025-01-20 12:20:21 +01:00
Henrik Rydgård
16dcb9ee8a And more 2025-01-20 12:20:21 +01:00
Henrik Rydgård
2523690584 Flip around so sceDelayResult is always outermost. Start using HLECall. 2025-01-20 12:20:18 +01:00
Henrik Rydgård
86fcdeeb25 string-view-ify stuff 2025-01-20 12:19:14 +01:00
Henrik Rydgård
6732d54742 Set up the basics. 2025-01-20 12:19:14 +01:00
Henrik Rydgård
67e97c20fb More log refactor 2025-01-19 17:14:31 +01:00
Henrik Rydgård
f962fb0386 Enable checking the format string, fix some issues 2025-01-19 16:51:05 +01:00
Henrik Rydgård
9165711cef Convert more HLE logging to the hleLog system 2025-01-19 15:53:20 +01:00
Henrik Rydgård
bb914ca4bf More kernel logging cleanup 2025-01-19 15:36:59 +01:00
Henrik Rydgård
ff8b51e6b7 Some logging cleanup in kernel 2025-01-19 14:54:09 +01:00
Henrik Rydgård
2e68d4f638 Clean up a lot of logging in psmf, audio, more 2025-01-19 13:56:51 +01:00
Henrik Rydgård
5316ec7ef7 Fix more misuse of the hleLog* functions 2025-01-19 13:09:30 +01:00
Henrik Rydgård
5f5ad32f7e Start cleaning up logging 2025-01-19 12:10:57 +01:00
Henrik Rydgård
a858032e46 Remove obsolete accounting for time spent stepping the GE (we no longer block) 2024-12-12 18:54:46 +01:00
Henrik Rydgård
c25e6b3933 Add "Split syscall" mechanism 2024-12-05 00:05:39 +01:00
Henrik Rydgård
0776ee01a8 ImDebugger: Add initial HLE module explorer window` 2024-11-15 14:49:19 +01:00
Henrik Rydgård
e01ca5b057
Logging API change (refactor) (#19324)
* Rename LogType to Log

* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.

* Mac/ARM64 buildfix

* Do the same with the hle result log macros

* Rename the log names to mixed case while at it.

* iOS buildfix

* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Henrik Rydgård
1025bbcf89 Log level/type: Use enum class instead of the awkward namespace trick.
Just a small cleanup I've wanted to do for a long time.
2023-08-25 11:48:59 +02:00
Henrik Rydgård
c5e0dafa44 Fix "double delay" error in sceNpDrmEdataSetupKey 2023-05-25 10:02:52 +02:00
Unknown W. Brackets
c735d10021 Reporting: Always report hleReportDebug.
Even if debug logging is not enabled.
2022-10-04 23:48:57 -07:00
Unknown W. Brackets
6f9f9f5f2a HLE: Ignore flip time in syscall stats.
Don't want to count flip timing as the slowest thing, when it happens
inside sceDisplaySetFramebuf (immediate.)
2021-08-14 20:18:06 -07:00
Henrik Rydgård
95dc7bb185 Minor cleanup 2021-07-10 20:00:50 +02:00
Henrik Rydgård
1ee70c1bcf Buildfix 2020-08-16 15:05:44 +02:00
Unknown W. Brackets
54e1afda1e HLE: Make calling mips funcs simpler.
This makes their return value handling, scheduling, etc. more
straight-forward.
2020-03-22 06:59:43 -07:00
Henrik Rydgård
22e65ba80d Get rid of ugly alignment macros and some other cruft, we now have alignas(16) from C++11 2017-08-31 01:14:51 +02:00
Henrik Rydgård
e74749f2b2 A function renamed, some logging improvements 2017-03-10 00:11:00 +01:00
Unknown W. Brackets
2d4e75369a Oops, fix typo.
Pointed out by Florin9doi - wasn't currently causing problems because the
value 1 isn't yet being used.
2016-08-05 11:34:22 -07:00
Unknown W. Brackets
4b4770bbc5 Log kernel syscalls with a K.
This way they can be properly differentiated.
2016-08-04 09:46:26 -07:00
Unknown W. Brackets
e75af43f0a Handle floats and sign extension in HLE logs.
In some cases, we were previously logging sign-extended error codes.  This
handles that better using type_traits.
2016-02-06 19:53:56 -08:00
Unknown W. Brackets
3a64388eee Support 64-bit args/return in new HLE logging.
Pulls in a new header, unfortunately, but this is a mostly clean way to do
it.
2016-01-24 22:22:23 -08:00
Unknown W. Brackets
043891014d Add a simpler way to force on HLE logging. 2015-10-25 09:05:16 -07:00
Unknown W. Brackets
c2153ff976 Add new logging in sceKernelCreateThread(). 2015-03-22 21:22:40 -07:00
Unknown W. Brackets
52a37c1330 Actually use the table's arg and ret masks. 2015-03-22 20:51:56 -07:00
Unknown W. Brackets
fcf0518223 Update all the HLE tables with arg and ret info. 2015-03-22 20:51:55 -07:00
Unknown W. Brackets
1b2b5f41a9 Fix a typo. 2015-03-22 20:49:43 -07:00
Unknown W. Brackets
2c8199ec73 Make gcc happy when there are no var args. 2015-03-22 20:49:42 -07:00
Unknown W. Brackets
41631eb2b1 Try a different format of HLE logging. 2015-03-22 20:49:42 -07:00
Henrik Rydgard
fd1dcb881f Add ability to flag function to clear a bit of stack. See #6374, idea by JPCSP, pointed out by sum2012. 2015-03-02 01:03:12 +01:00
Unknown W. Brackets
745c453b33 Remove hleAfterCheckAllCallbacks().
Not being used, doesn't make sense - rescheduling is what does that, only.
2014-06-28 03:10:30 -07:00
Unknown W. Brackets
03f86f364f Skip debug stepping time in list/func time.
Just makes the debug stats actually useful while stepping.  A bit of
overengineering, but it makes it easy to go frame-by-frame looking for
perf issues.
2014-06-14 08:42:18 -07:00
Unknown W. Brackets
05ab192c9c Reduce includes in Core/HLE/.
Especially templates.
2014-03-15 11:22:19 -07:00
Henrik Rydgard
c80510fb3b MemMap should not be included in MIPS.h. 2014-03-15 10:45:39 +01:00
Unknown W. Brackets
641064f0bc Consistently use MIPS_REG_V0 for return values.
This way all instances are a lot easier to search for (was trying to find
where we were writing an incorrect value to v0, turns out to be callback
related of course.)
2014-03-04 08:21:55 -08:00
Henrik Rydgård
00c32ddadb Mostly get rid of including "Globals.h" 2013-12-30 10:17:11 +01:00