Commit graph

5989 commits

Author SHA1 Message Date
Gliniak
26b0aa0cc4 [Kernel/Memory] Restrict NtVirtualMemory only to virtual memory range 2020-11-22 15:43:53 -06:00
Gliniak
c071500ff4 [Base] Specify heap type on initialization 2020-11-22 15:43:53 -06:00
Triang3l
2cb7d26d62 [Android] Add a comment about pthreads dynamic loading 2020-11-23 00:42:58 +03:00
Gliniak
aae292aab5 [Kernel/Memory] MmQueryAddressProtect - Check for protect_bits equals 0 2020-11-22 15:40:03 -06:00
gibbed
8749ca2260 [Kernel] Filter thread names from guest. 2020-11-22 14:54:08 -06:00
gibbed
4f25a96928 [Kernel] Overhaul Rtl time functions.
- Add date third party submodule.
- [Kernel] Add xclock.
- [Kernel] Reimplement RtlTimeToTimeFields using std::chrono/date/xclock.
- [Kernel] Reimplement RtlTimeFieldsToTime using std::chrono/date/xclock.
- Supersedes #1612.
2020-11-22 14:48:36 -06:00
Triang3l
63ff758049 [Threading] Android thread naming and other cleanup 2020-11-22 20:03:45 +03:00
Triang3l
aca23c08cf [Memory] Fix kFileMappingHandleInvalid typos in tests 2020-11-22 18:49:47 +03:00
Triang3l
a39266b71e [Threading] Android thread termination signal 2020-11-22 18:48:55 +03:00
Triang3l
0ebf073385 [Base] Affinity and yield to sched on Android 2020-11-22 16:56:04 +03:00
Triang3l
4042ea50e4 [Build] Android system shared libraries 2020-11-22 16:37:31 +03:00
Triang3l
efb135b971 [Android] API, feature and permission requirements 2020-11-22 16:33:45 +03:00
Triang3l
9ef7fb62d3 [Memory] Android memory mapping 2020-11-22 16:32:46 +03:00
Triang3l
ec507dc2f6 [Memory] Fix forgotten kFileMappingHandleInvalid 2020-11-22 14:34:09 +03:00
Triang3l
86ae42919d [Memory] Close shared memory FD and properly handle its invalid value 2020-11-22 14:17:37 +03:00
Sandy Carter
432369ae84 [kernel] Define param order between compilers
Fix issue in clang where args were inverted last to first due to the way
c++ implements function calls.
The function make_tuple, being a function, has undefined ordering of
resolution of the values of its parameters `Ps(init)` and would vary
between compilers. Namely clang would resolve them in order and msvc
would resolve them in reverse order.
This normally would not matter except for the fact that init maintains
a mutable state which is affected my the order of operations:
init.ordinal is a counter and also defines where in memory a value is
stored.
The C++ standard doesn't define an order of resolution of parameters in
a function but it will define an order in a brace-initializer.
Switching make_tuple for a brace-initializer enforces an order which is
the same between all compilers (tested gcc, clang and msvc).
Prior code was written to decrement ordinal due to the reverse
traversal.
This has been switched to incrementing thanks to the in-order
traversal.
2020-11-22 13:54:00 +03:00
Sandy Carter
49e194009b [memory linux] Properly unlink shared memory
shm_unlink(name) is the proper way to close a shared memory in linux.
Prior to this, xenia was creating and not cleaning up shared memory handle
which would accumulate in /dev/shm. shm_unlink is the proper way of doing
this.
Add filename to CloseFileMappingHandle signature.
Add simple test to open and close.
2020-11-22 13:54:00 +03:00
Sandy Carter
2c7009ca80 [memory] Move "Local\\" prefix to win impl
CreateFileMappingHandle now takes shared memory name without a prefix.
The doc of shm_open recommends not using slashes and prefixing with "/".
The prefixing has been moved to the os implementation layer.
Invocations of CreateFileMappingHandle were all using "Local\\" so these
prefixes were removed.
2020-11-22 13:54:00 +03:00
Sandy Carter
22ef265057 [memory] Add Memory mapping view tests
Add test for mapping and for mapping with access.
2020-11-22 13:54:00 +03:00
uytvbn
962b90f699 [Linux] Implement virtual memory allocation 2020-11-22 13:54:00 +03:00
Sandy Carter
5fa59fc4a9 threading_posix: don't delete thread_local thread object
Disabling on exit thread delete as it causes an assert fail.
There isn't a leak here because current_thread_ is a thread_local static.
2020-11-21 22:30:43 -06:00
Sandy Carter
aa332dcc8e threading_posix: Increase stack size in test
16 KB is not enough for the linux thread to be spawned so bump up to 16MB
2020-11-21 22:30:43 -06:00
Triang3l
d76e408681 [Build] Add Android to platform_files.lua 2020-11-22 00:15:36 +03:00
Triang3l
9f45a1f338 [Base] Use bswap_16/32/64 from byteswap.h on Linux 2020-11-21 23:54:20 +03:00
Triang3l
bcdca56e32 [Build] Mark RTTI as enabled for Android 2020-11-21 23:52:45 +03:00
Triang3l
233daa018d [Build] Enable exceptions and Clang STL on Android 2020-11-21 23:40:34 +03:00
Triang3l
0dcc1b18d6 [Android] Remove releaseDebuggable config since debuggable disables optimization 2020-11-21 23:13:30 +03:00
Triang3l
c0c47e3902 [Build] Update premake-androidmk fork 2020-11-21 23:11:36 +03:00
Triang3l
6c1394d55d [Build] Switch premake-androidmk to a fork 2020-11-21 23:07:14 +03:00
Triang3l
73dad88429 [Android] Studio project enough to invoke NDK-Build 2020-11-21 22:00:48 +03:00
Joel Linn
923678dad7 [GPU] Add performance counter registers.
v3: Document registers referenced by D3D in `gpu.md`.
2020-11-21 21:55:52 +03:00
Joel Linn
f6dc9ad517 [GPU] Skip viz-query geometry (if marked).
Document research about viz queries.

v2: Remove viz status unions and move comments to register definitions.
    Add contributors to TODOs.

v3: Comment out unused variables.
    Add TODO for correctly dropping draw calls with memexport.
    Register comment formatting.
2020-11-21 21:55:52 +03:00
Triang3l
b06138b464 [GPU] Disable faceness for rectangles temporarily 2020-11-21 21:52:17 +03:00
Triang3l
2f247e0f9e [Build] Make premake-androidmk generate something 2020-11-21 17:14:40 +03:00
Triang3l
7cb3cc3564 [Build] Fix a typo in get_premake_target_os comment 2020-11-21 16:32:07 +03:00
Triang3l
48c97dd3b4 [Base] Android and Arm platform defines 2020-11-21 16:26:26 +03:00
Triang3l
14157e063a [Build] Support cross-compilation via xb premake --target_os 2020-11-21 16:23:01 +03:00
Triang3l
25606774e1 [Build] xenia-build Android host OS detection 2020-11-21 16:22:48 +03:00
Triang3l
4786e93c96 [Build] Better Android detection in tools/build/premake 2020-11-21 16:22:38 +03:00
Triang3l
3f9e86e785 [Build] Clone premake to internal storage on Android 2020-11-21 16:22:26 +03:00
Triang3l
00a7d1a067 [D3D12] Cleanup rasterizer state 2020-11-20 23:12:12 +03:00
Triang3l
44a3f200c3 [GPU] Rename PrimitiveTwoFaced to PrimitivePolygonal, add rects to it and ignore fill modes for non-polygons 2020-11-19 23:55:49 +03:00
Triang3l
3ff5965133 [Build] Disable potentially dangerous floating point optimizations 2020-11-19 21:28:02 +03:00
Triang3l
99bb82fd1c [GPU] Separate GetHostViewportInfo X and Y bounds 2020-11-18 12:27:36 +03:00
gibbed
49dc0e9c39 [XAM] Rollup of user fixes.
- [XAM] Fix XamUserGetXUID type mask handling.
- [XAM] Fix XamGetUserName return values.
- [XAM] Fix XamGetUserName copy size.
- [XAM] Implement XamGetUserGamerTag.
- [XAM] Fix XamUserCheckPrivilege handling of all users.
- [XAM] Stub XamUserGetMembershipTier.
2020-11-17 19:58:30 -06:00
Triang3l
b7ba3051f2 [Kernel] Fix null in thread affinity init + ignore affinity when less than 6 cores 2020-11-16 23:15:51 +03:00
Satori
52230fd4e8 [Base] Fix FileLogSink not writing to log file 2020-11-16 14:04:17 -06:00
Triang3l
10d7bcde93 [GPU] Viewport in draw_util with host API flexibility 2020-11-16 23:03:42 +03:00
Sandy
eda027a220 readme: fix label in linux help 2020-11-16 20:38:48 +03:00
Satori
b74eac36c7 [Base] Log to stdout by default 2020-11-16 01:52:27 -06:00