bunnei
e6f71e15a1
common: Merge uint128 to a single header file with inlines.
2021-02-15 14:46:04 -08:00
Fernando Sahmkow
659fb51dd9
X86/NativeClock: Reimplement RTDSC access to be lock free.
2021-01-02 04:00:27 +01:00
Fernando Sahmkow
50dd9a423a
X86/NativeClock: Improve performance of clock calculations on hot path.
2021-01-02 00:43:47 +01:00
Lioncash
50516223e3
xbyak_abi: Shorten std::size_t to size_t
...
Makes for less reading.
2020-12-05 00:43:55 -05:00
Lioncash
65a52ab81a
xbyak_abi: Avoid implicit sign conversions
2020-12-05 00:43:41 -05:00
Lioncash
29db886722
audio_core: Make shadowing and unused parameters errors
...
Moves the audio code closer to enabling warnings as errors in general.
2020-12-03 00:54:31 -05:00
Lioncash
38ffaef6eb
common: Enable warnings as errors
...
Cleans up common so that we can enable warnings as errors.
2020-11-02 15:50:58 -05:00
ReinUsesLisp
a66d8bb49d
common/wall_clock: Add virtual destructors
...
From -fsanitize=address, this code wasn't calling the proper destructor.
Adding virtual destructors for each inherited class and the base class
fixes this bug.
While we are at it, mark the functions as final.
2020-09-30 02:53:34 -03:00
Lioncash
1233d14175
externals: Update Xbyak to 5.96
...
I made a request on the Xbyak issue tracker to allow some constructors
to be constexpr in order to avoid static constructors from needing to
execute for some of our register constants.
This request was implemented, so this updates Xbyak so that we can make
use of it.
2020-08-30 05:09:48 -04:00
Fernando Sahmkow
94a51e6b21
Core/Common: Address Feedback.
2020-06-27 18:20:06 -04:00
Fernando Sahmkow
74c9ad1976
Common/NativeClockx86: Reduce native clock accuracy further.
2020-06-27 11:36:18 -04:00
Fernando Sahmkow
1cc7c426df
X64 Clock: Reduce accuracy to be less or equal to guest accuracy.
2020-06-27 11:35:55 -04:00
Fernando Sahmkow
fb1d75a788
HostTiming: Pause the hardware clock on pause.
2020-06-27 11:35:10 -04:00
David
a83f0b607e
Merge pull request #3396 from FernandoS27/prometheus-1
...
Implement SpinLocks, Fibers and a Host Timer
2020-06-28 01:34:07 +10:00
Morph
d0a762a6a8
common/cpu_detect: Add AVX512 detection
2020-06-20 00:31:37 -04:00
Fernando Sahmkow
0c789667d9
Common: Refactor & Document Wall clock.
2020-06-18 16:29:18 -04:00
Fernando Sahmkow
ee32067b10
Common: Implement WallClock Interface and implement a native clock for x64
2020-06-18 16:29:17 -04:00
MerryMage
f0054fb284
xbyak_abi: Prefer returning a struct to using out parameters in ABI_CalculateFrameSize
2020-06-15 19:07:11 +01:00
MerryMage
10e9220ec6
xbyak_abi: Register indexes should be unsigned
2020-06-15 19:07:11 +01:00
MerryMage
f60ab4ab14
xbyak_abi: Remove *GPS variants of stack manipulation functions
2020-06-15 18:59:54 +01:00
MerryMage
c1f6eaf06b
xbyak_abi: Fix ABI_PushRegistersAndAdjustStack
...
Pushing GPRs twice.
2020-06-15 18:59:01 +01:00
David Marcec
4686c15c03
Add xbyak external
2020-05-30 10:55:27 +10:00
James Rowe
afd360f85d
Remove unused CPU Vendor string and telemtry field
...
The information is duplicated in the brand string and the telemetry field is unused
2020-01-17 18:41:18 -07:00
Lioncash
7a14d90f97
common: Remove dependency on xbyak
...
Xbyak is currently entirely unused. Rather than carting it along, remove
it and get rid of a dependency. If it's ever needed in the future, then
it can be re-added (and likely be more up to date at that point in
time).
2018-11-21 03:43:41 -05:00
fearlessTobi
1190ea6ddb
Port #4182 from Citra: "Prefix all size_t with std::"
2018-09-15 15:21:06 +02:00
Lioncash
c0f2f8a840
common/xbyak_abi: Mark defined functions in header as inline
...
Avoids potential One Definition Rule violations when these are used in
the future.
2018-08-14 18:29:56 -04:00
Lioncash
9b5b9205a5
common/xbyak: Use nested namespace specifiers where applicable
2018-08-14 18:27:27 -04:00
Lioncash
6b1e9244c0
common: Convert type traits templates over to variable template versions where applicable
...
Uses the C++17 inline variable variants
2018-08-07 19:34:47 -04:00
N00byKing
6b5f41b812
cpu_detect.cpp: Change comment from citra to yuzu
2018-03-26 21:43:39 +02:00
James Rowe
ea88c44eb8
Format: Run the new clang format on everything
2018-01-20 16:45:11 -07:00
Yuri Kunde Schlesner
8b55ffb74a
Common: Fix some out-of-style includes
2017-05-27 16:14:10 -07:00
Yuri Kunde Schlesner
bc3f65a0ee
common/cpu_detect: Add missing include and fix namespace scope
2017-03-12 21:55:15 -07:00
Weiyi Wang
6580180759
Common/x64: remove legacy emitter and abi ( #2504 )
...
These are not used any more since we moved shader JIT to xbyak.
2017-01-31 01:06:42 -08:00
Yuri Kunde Schlesner
2d892f845c
VideoCore: Convert x64 shader JIT to use Xbyak for assembly
2016-12-14 20:06:08 -08:00
Jan Beich
6ddc8b49ff
common: use system CPUID routine on DragonFly as well
2016-10-27 23:28:30 +00:00
Jan Beich
8e5d3f77fb
common: some FreeBSD headers are incomplete to avoid namespace pollution
...
In file included from src/common/x64/cpu_detect.cpp:16:
/usr/include/machine/cpufunc.h:66:17: error: unknown type name 'u_int'
static __inline u_int
^
/usr/include/machine/cpufunc.h:67:6: error: unknown type name 'u_int'
bsfl(u_int mask)
^
/usr/include/machine/cpufunc.h:69:2: error: unknown type name 'u_int'
u_int result;
^
/usr/include/machine/cpufunc.h:75:17: error: unknown type name 'u_long'; did you mean 'long'?
static __inline u_long
^
/usr/include/machine/cpufunc.h:76:6: error: unknown type name 'u_long'; did you mean 'long'?
bsfq(u_long mask)
^
/usr/include/machine/cpufunc.h:78:2: error: use of undeclared identifier 'u_long'; did you mean
'long'?
u_long result;
^
[...]
2016-10-27 23:28:30 +00:00
Yuri Kunde Schlesner
fa5d9d8266
Use negative priorities to avoid special-casing the self-include
2016-09-21 00:15:56 -07:00
Emmanuel Gil Peyrot
1138ec0d49
Remove empty newlines in #include blocks.
...
This makes clang-format useful on those.
Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
2016-09-21 11:15:47 +09:00
Yuri Kunde Schlesner
1e4a5da9f4
Manually tweak source formatting and then re-run clang-format
2016-09-18 21:14:25 -07:00
Emmanuel Gil Peyrot
628ed4376a
Sources: Run clang-format on everything.
2016-09-18 09:38:01 +09:00
Emmanuel Gil Peyrot
c39a267974
VideoCore: Run include-what-you-use and fix most includes.
2016-04-30 17:02:41 +01:00
bunnei
2d9c714baf
emitter: Add CALL that can be fixed up.
2016-04-13 23:04:50 -04:00
bunnei
98e70a3040
emitter: Support arbitrary FixupBranch targets.
2016-04-13 23:04:42 -04:00
Lioncash
11f0ba5143
emitter: templatize ImmPtr
2016-03-09 03:13:01 -05:00
Lioncash
adc46f6a4f
emitter: constexpr-ify helper functions
2016-03-09 03:13:00 -05:00
Lioncash
eaf4973993
emitter: Get rid of CanDoOpWith
...
This was removed in Dolphin as there were no particular uses for it.
I'm sure the same will apply to citra.
2016-03-09 03:12:59 -05:00
Lioncash
fad503ce71
emitter: constexpr-ify OpArg
2016-03-09 03:12:53 -05:00
Lioncash
3a2c84f5a4
emitter: friend class OpArg with XEmitter
2016-03-09 02:25:00 -05:00
Lioncash
ba1b8314f4
emitter: Remove unimplemented prototype
2016-03-09 02:20:00 -05:00
MerryMage
7ca5dd5e08
x64 Emitter: Fix L bit in VEX prefix
2016-02-27 12:45:26 +00:00