sephiroth99
049ca6de42
Use Clang 3.8 for Linux building.
2015-09-25 23:40:56 -04:00
Ben Vanik
ee92f75a84
Updating to the latest clang-format. Make sure to update yourselves!
2015-09-22 08:26:19 -07:00
Ben Vanik
2298fa8048
Now that clang-3.8 is whitelisted on travis, try that.
2015-09-22 08:19:57 -07:00
Ben Vanik
a47badd84f
Pulling latest submodules.
2015-09-22 07:54:46 -07:00
Ben Vanik
69b58cf189
Fixing checked build.
2015-09-22 07:52:45 -07:00
sephiroth99
8272beb8d2
Fix assignment of temporary value to non-const reference.
2015-09-22 07:45:57 -07:00
sephiroth99
08ae855e07
It seems 'export' is a reserved keyword for clang.
2015-09-22 07:45:52 -07:00
sephiroth99
f3a4e1146f
Fix logical-op parenthesis error from clang.
2015-09-22 07:44:16 -07:00
sephiroth99
7fb4fd2790
More workarounds for __m128.
2015-09-22 07:44:04 -07:00
sephiroth99
7e58ad2800
Put MSVC buildoptions under Windows platform filter.
2015-09-22 07:43:59 -07:00
sephiroth99
ab2ef82d55
xobject: remove accept method of object_ref class
...
The removed method was causing an error in clang ("call to non-static member
function without an object argument"). As it was not used, simply remove
it.
2015-09-22 07:43:08 -07:00
sephiroth99
890e4591ce
Set premake language to C for projects with C source code.
2015-09-22 07:42:52 -07:00
sephiroth99
5cec2b3d3e
Move Windows specific linkoption under Windows platform section.
2015-09-22 07:42:46 -07:00
sephiroth99
9961fbde2e
Set std=c++14 only when compiling C++ projects.
2015-09-22 07:41:37 -07:00
sephiroth99
e1d569dd7c
Fix usage of __m128.
...
With GCC and clang, __m128 is not a struct, so there are no struct members
to access the individual items in the vector.
Use standard load/store function and some hackery to workaround this
limitation.
2015-09-22 07:41:28 -07:00
sephiroth99
9134061044
Set clang as the C compiler and clang++ as the C++ compiler.
2015-09-22 07:39:42 -07:00
sephiroth99
542f5ba8e5
Move GetTempReg higher in the source file, before its first usage.
2015-09-22 07:39:26 -07:00
sephiroth99
ff7c755bc9
memory: AlignedAlloc: fallback to aligned_alloc()
...
When compiling with clang++, __STDC_VERSION__ is not defined (obviously
as clang++ is not a C compiler). Because of this, check if compiling
with MSVC and fallback to the Linux implementation. If the latter is not
supported, compilation will fail, as it previously would have with the
2015-09-22 07:39:06 -07:00
Ben Vanik
83f3d520b2
Add missing header includes.
2015-09-22 07:38:59 -07:00
Ben Vanik
3fc1d02a09
Suspend some host threads that make guest callbacks.
2015-09-21 21:24:26 -07:00
Ben Vanik
4c8634bc31
Fixing breakpoints.
2015-09-21 21:10:57 -07:00
Ben Vanik
5d033f9cb3
A new debugger.
...
Lots of bugs/rough edges/etc - issues will be filed.
Old-style debugging still works (just use --emit_source_annotations to get
the helpful movs back and --break_on_instruction will still fire).
2015-09-20 21:31:05 -07:00
Ben Vanik
8046c19898
Correcting bad flags.txt path. Fixes #424 .
2015-09-12 10:02:06 -07:00
Ben Vanik
80c75151c9
Fixing libav incomplete build issue. Fixes #425 .
2015-09-12 10:00:19 -07:00
Ben Vanik
02103ddde0
Merge pull request #423 from DrChat/crash_pause
...
Pause Xenia if it crashes in guest code
2015-09-11 15:19:32 -07:00
Dr. Chat
2983b0c090
Update some documentation.
2015-09-11 17:12:49 -05:00
Dr. Chat
cad23cea81
Pause the emulator if the guest crashes and the VS debugger isn't attached.
2015-09-11 17:09:25 -05:00
Dr. Chat
8e716a3a7e
Exception handler abstraction class
2015-09-11 17:07:12 -05:00
Ben Vanik
edef57065b
Merge pull request #421 from DrChat/mmio_fix
...
Fix the MMIO handler picking up invalid accesses outside of the mapped range
2015-09-07 19:29:37 -07:00
Dr. Chat
a2bc0443f2
Quick-kill the MMIO handler if the fault address is above the mapping range.
2015-09-07 21:26:33 -05:00
Ben Vanik
3ac83b16c8
Fix double window destroy.
2015-09-07 09:41:44 -07:00
Ben Vanik
fa9c681c7c
Implicit Window::MakeReady on context set.
2015-09-07 09:29:07 -07:00
Ben Vanik
ec7c74d04c
Ref count elemental.
2015-09-07 09:26:36 -07:00
Ben Vanik
539f69f368
Multi-window GL contexts.
2015-09-07 09:08:54 -07:00
Ben Vanik
5411b67e05
Only register window class once.
2015-09-07 09:08:38 -07:00
Ben Vanik
3e66afeb3a
Don't steal focus on mouse move.
2015-09-07 09:08:27 -07:00
Ben Vanik
855ab7c040
Fixing set_bordered name.
2015-09-07 09:08:19 -07:00
Ben Vanik
2b30ac393d
Source control.
2015-09-07 08:28:02 -07:00
Ben Vanik
a1a996c1e6
Shrinking UI elements in the debugger.
2015-09-06 20:49:20 -07:00
Ben Vanik
e5fbf840d2
Shuffling kernel/.
2015-09-06 18:07:52 -07:00
Ben Vanik
494cba7131
Removing unused XAsyncRequest.
2015-09-06 14:10:34 -07:00
Ben Vanik
8588fbc6cf
Shuffling kernel util types to util/.
2015-09-06 13:45:52 -07:00
Ben Vanik
068b2056ca
Explode more gracefully on crashes while crashing.
2015-09-06 13:34:39 -07:00
Ben Vanik
0133bec11d
Fix empty line logging.
2015-09-06 13:34:19 -07:00
Ben Vanik
790ce8aee1
Switch back to std:: muteces. mutices. mutexen.
2015-09-06 13:34:08 -07:00
Ben Vanik
cb3dbcccbc
Notes.
2015-09-06 11:05:16 -07:00
Ben Vanik
e48c3534cc
Removing copy to temp buffer in log flush.
2015-09-06 10:28:17 -07:00
Ben Vanik
9ae807e56e
Initialize builtins to 0.
2015-09-06 10:07:27 -07:00
Ben Vanik
669f5b061f
Moving DPC list into KernelState and removing unused file.
2015-09-06 09:36:39 -07:00
Ben Vanik
3c96b6fa0a
DANGER DANGER. Switching to global critical region.
...
This changes almost all locks held by guest threads to use a single global
critical region. This emulates the behavior on the PPC of disabling
interrupts (by calls like KeRaiseIrqlToDpcLevel or masking interrupts),
and prevents deadlocks from occuring when threads are suspended or
otherwise blocked.
This has performance implications and a pass is needed to ensure the
locking is as granular as possible. It could also break everything
because it's fundamentally unsound. We'll see.
2015-09-06 09:30:54 -07:00