Sandy Carter
1c10e7654f
[cpu] Test cpu-test on travis
2019-08-24 22:46:54 +02:00
uytvbn
0e54381d4c
[Linux] Implement virtual memory allocation
2019-08-24 22:46:54 +02:00
Sandy Carter
b3f5b6ecf0
[cpu] Add linux registers to CallExtern
2019-08-24 22:46:54 +02:00
Sandy Carter
74d30f8348
[cpu] Use dynamic cast for downcasting pointers
2019-08-24 22:46:54 +02:00
Sandy Carter
0cf34743cc
ppc linux: add comment about xmm registers
2019-08-24 22:46:54 +02:00
Sandy Carter
02dd9254b1
[travis] Enable ppc gentest and tests
2019-08-24 22:46:54 +02:00
Sandy Carter
23353173fe
[Linux] Fix Processor::backend() on release
...
Disable inlining on backend() which causes ppc issues on clang 7 in release builds.
2019-08-24 22:46:54 +02:00
Sandy Carter
85f407f317
[Linux] Fix Value::Not on release
...
Disable optimization on set zero to prevent clang from vectorizing the assigment to zero which would
use different registers than expected.
2019-08-24 22:46:54 +02:00
Sandy Carter
ee7f68a85f
[Linux] Fix Value::set_zero() on release
...
Disable optimization on set zero to prevent clang from vectorizing the
assigment to zero which would use different registers than expected.
With -O0: RAX. With -O1: RDI.
2019-08-24 22:46:54 +02:00
uytvbn
8817975912
[Linux] Fix Value::MulHi
2019-08-24 22:46:54 +02:00
uytvbn
c804b0dff9
[Linux] Force passing XMM values by pointer
2019-08-24 22:46:54 +02:00
uytvbn
41b0aa9ffd
[Linux] Implement thunk generation
2019-08-24 22:46:53 +02:00
Sandy Carter
c97c4dbeac
[string] Remove reuse of va_list in AppendVarargs
...
va_list are not guarenteed to maintain their values after being used.
With clang on Linux, args is undefined after fetching length and will print
"(null)".
Copy args into another va_list before getting length to prevent this.
Add tests.
2019-08-24 22:45:06 +02:00
Sandy Carter
6c58b3b13d
[string] Add base string tests
2019-08-24 22:45:06 +02:00
uytvbn
60fea32f52
[Linux] Fix off-by-one error in bit_scan_forward
2019-08-24 22:45:06 +02:00
uytvbn
7186af388a
[Linux] Implement exception handler
2019-08-24 22:45:06 +02:00
uytvbn
8e92a4b55b
[Linux] Fix binutils path for gentests
2019-08-24 22:45:06 +02:00
Triang3l
a422166123
[Kernel] Fix MmAllocatePhysicalMemoryEx range base
2019-08-24 19:23:31 +03:00
Triang3l
7e6bf8022f
[Memory] Refactor GetPhysicalAddress and use it for XMA, resolve #1448
2019-08-24 17:42:06 +03:00
gibbed
3e6c2bb47c
Fix up handling of positional options in cvar handling.
...
- Fix up handling of positional options in cvar handling so that executables
other than app can handle them properly.
- Fix command-line arguments for xenia-vfs-dump.
2019-08-24 07:41:55 -05:00
gibbed
16bbfdbb3c
Fix handling of paths to Python with spaces in xb.bat.
2019-08-23 10:40:21 -05:00
gibbed
24321dbcd9
[x64] Fix up offset of stack alloc in prolog for unwind info.
...
- [x64] Track offset of stack alloc in prolog within emitted functions.
- [x64] Don't use hardcoded offset of stack alloc in prolog in generated
unwind info.
2019-08-23 06:12:22 -05:00
gibbed
0dc4a13db3
[x64] Fix up unwind info for emitted functions.
...
- [x64] Track size of code within emitted functions (prolog, body, epilog).
- [x64] Don't use hardcoded prolog size in generated unwind info.
- [x64] Update URLs to MSDN documentation on UNWIND_INFO/UNWIND_CODE.
2019-08-23 06:12:22 -05:00
gibbed
918a7d4365
[x64] Reuse module handle when pulling in growable function table imports.
2019-08-23 06:12:22 -05:00
gibbed
92a85d6692
[x64] Remove outdated comment.
2019-08-23 06:12:22 -05:00
emoose
f46e3c7e39
[Kernel/VFS] Ensure vfs::Entry is up-to-date before retrieving file information
...
Games like Forza use NtQueryInformationFile to get the size of the file, to make sure that there's enough room inside it to write data.
Previously, updating the file size (via SetInfoFile(EndOfFile) or WriteFile) wouldn't update the vfs::Entry size field, which NtQueryInfo uses to return the size of the file.
This resulted in the game thinking that the file was smaller than it actually is, and trying to correct that by using SetInfoFile(EndOfFile), which then truncated the file and deleted important data that was written to it.
2019-08-21 02:00:57 -05:00
emoose
06cacbb9af
[Kernel] Implement XeKeysObscureKey & XeKeysAesCbcUsingKey
2019-08-21 02:00:57 -05:00
emoose
b22d76f0f9
[Kernel] Add XLiveBase 0x58046 stub
2019-08-21 02:00:57 -05:00
Triang3l
4731ae026b
[D3D12] 3D/stacked texture layer addressing
2019-08-19 23:24:58 +03:00
gibbed
f9e037f84b
Suppress stderr for 'where python'/'where python3' in xb.bat.
2019-08-18 09:49:44 -05:00
gibbed
75a78c45c4
More xb.bat fixes.
...
- Properly check if candidate path exists.
- Quote python path when invoking.
2019-08-18 09:35:11 -05:00
Triang3l
56b168216d
Merge pull request #1441 from Triang3l/dcb-instructions
...
[CPU] Data cache control instructions
2019-08-18 16:43:46 +03:00
Triang3l
bc4b68db45
[CPU] Data cache control instructions
2019-08-18 16:22:32 +03:00
gibbed
c19dc9c7d6
Prefer vsdevcmd over vcvarsall.
2019-08-17 08:32:20 -05:00
gibbed
1ebc13df94
Oops. Call set after vsdevcmd.
2019-08-17 08:32:20 -05:00
gibbed
7b0367da5f
Overhaul finding Python in xb.bat.
...
- Checks hardcoded paths first, then checks for results of 'where python3' and
'where python'.
- Checks if these files and have a size larger than 0 (fixes Windows 10 issue).
2019-08-17 08:07:02 -05:00
gibbed
745d5609e6
Add hardcoded path for Python 3.7 to xb.bat Python check.
2019-08-17 08:07:02 -05:00
gibbed
c3c77187bb
Fix an issue in git-clang-format that exists with Python 3.4. Issue resolved on its own by Python 3.7 (unknown when it's actually resolved) but still good to have this fix.
2019-08-17 08:05:03 -05:00
Triang3l
b25c50164f
[APU] Physical address in XE_XMA_REG_CONTEXT_ARRAY_ADDRESS
2019-08-16 21:20:10 +03:00
Triang3l
e35c609224
Revert "[APU] Temp XMA context allocation region workaround"
...
This reverts commit 968c337d22
.
2019-08-16 21:11:55 +03:00
Triang3l
968c337d22
[APU] Temp XMA context allocation region workaround
2019-08-16 09:47:28 +03:00
Triang3l
0faafd738a
[Docs] Update 0xE0000000 range info
2019-08-16 09:26:34 +03:00
Triang3l
126978d960
[Memory] Fix memory watch addresses
2019-08-16 08:49:48 +03:00
Triang3l
834ced0d63
[Memory] 0xE0000000: Fix a typo, re-enable and cleanup
2019-08-15 23:55:33 +03:00
Triang3l
e862169156
[Memory] BaseHeap::TranslateRelative including host address offset
2019-08-15 00:31:21 +03:00
Triang3l
0451153760
[Memory] Temporarily disable allocation in 0xE0000000
2019-08-15 00:06:27 +03:00
gibbed
6ab7720951
[Kernel] Fix stray whitespace in license_mask definition.
2019-08-14 14:15:56 -05:00
Triang3l
003c02c640
[CPU, Memory] 0xE0000000 adjustment by @elad335 and mapping
2019-08-14 21:37:52 +03:00
illusion98
c021c7741d
[Kernel] Add license mask as a config variable
2019-08-14 10:25:24 -05:00
Sandy Carter
3c3709dbe7
[CPU] Use c++ style cast
2019-08-14 06:42:30 -05:00