parent
b018b6fe56
commit
0aa7d1ec05
|
@ -19,3 +19,6 @@
|
|||
[submodule "third_party/wslay"]
|
||||
path = third_party/wslay
|
||||
url = https://github.com/benvanik/wslay.git
|
||||
[submodule "third_party/libjit"]
|
||||
path = third_party/libjit
|
||||
url = https://github.com/benvanik/libjit.git
|
||||
|
|
10
common.gypi
10
common.gypi
|
@ -2,14 +2,6 @@
|
|||
{
|
||||
'default_configuration': 'release',
|
||||
|
||||
'conditions': [
|
||||
['OS == "mac"', {
|
||||
'variables': {
|
||||
'is_clang': 1
|
||||
}
|
||||
}],
|
||||
],
|
||||
|
||||
'variables': {
|
||||
'configurations': {
|
||||
'debug': {
|
||||
|
@ -122,7 +114,7 @@
|
|||
'DebugInformationFormat': '3',
|
||||
'ExceptionHandling': '1', # /EHsc
|
||||
'AdditionalOptions': [
|
||||
'/MP',
|
||||
'/MP', # Multiprocessor
|
||||
'/TP', # Compile as C++
|
||||
],
|
||||
},
|
||||
|
|
|
@ -95,12 +95,6 @@ gyp/gypi files.
|
|||
|
||||
xb gyp
|
||||
|
||||
#### xethunk
|
||||
|
||||
Updates the checked-in `src/cpu/xethunk/xethunk.bc` and `xethunk.ll` files.
|
||||
This is only required if changes are made to the xethunk files. The results
|
||||
should be checked in.
|
||||
|
||||
#### build
|
||||
|
||||
Builds all xenia targets using ninja. Release is built by default; specify
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
python xenia-build.py xethunk
|
||||
python xenia-build.py build
|
||||
|
||||
if [ "$?" -ne 0 ]; then
|
||||
|
|
|
@ -34,7 +34,6 @@
|
|||
#include <xenia/cpu/codegen/module_generator.h>
|
||||
#include <xenia/cpu/ppc/instr.h>
|
||||
#include <xenia/cpu/ppc/state.h>
|
||||
#include <xenia/cpu/xethunk/xethunk.h>
|
||||
|
||||
|
||||
using namespace llvm;
|
||||
|
|
|
@ -10,21 +10,9 @@
|
|||
#ifndef XENIA_CPU_PPC_STATE_H_
|
||||
#define XENIA_CPU_PPC_STATE_H_
|
||||
|
||||
|
||||
/**
|
||||
* NOTE: this file is included by xethunk and as such should have a *MINIMAL*
|
||||
* set of dependencies!
|
||||
*/
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
|
||||
#ifdef XE_THUNK
|
||||
#define XECACHEALIGN __attribute__ ((aligned(8)))
|
||||
#define XECACHEALIGN64 __attribute__ ((aligned(64)))
|
||||
#endif
|
||||
|
||||
|
||||
// namespace FPRF {
|
||||
// enum FPRF_e {
|
||||
// QUIET_NAN = 0x00088000,
|
||||
|
|
|
@ -315,8 +315,6 @@ void RtlImageXexHeaderField_shim(
|
|||
// into guest memory, as it should be opaque and so long as our size is right
|
||||
// the user code will never know.
|
||||
//
|
||||
// This would be good to put in xethunk for inlining.
|
||||
//
|
||||
// Ref: http://msdn.microsoft.com/en-us/magazine/cc164040.aspx
|
||||
// Ref: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/critical.c?view=markup
|
||||
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Subproject commit d002b47f609617c4609ba4c3982ecb89223cb28c
|
|
@ -68,7 +68,6 @@ def discover_commands():
|
|||
'gyp': GypCommand(),
|
||||
'build': BuildCommand(),
|
||||
'test': TestCommand(),
|
||||
'xethunk': XethunkCommand(),
|
||||
'clean': CleanCommand(),
|
||||
'nuke': NukeCommand(),
|
||||
}
|
||||
|
@ -459,33 +458,6 @@ class TestCommand(Command):
|
|||
return result
|
||||
|
||||
|
||||
class XethunkCommand(Command):
|
||||
"""'xethunk' command."""
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(XethunkCommand, self).__init__(
|
||||
name='xethunk',
|
||||
help_short='Updates the xethunk.bc file.',
|
||||
*args, **kwargs)
|
||||
|
||||
def execute(self, args, cwd):
|
||||
print 'Building xethunk...'
|
||||
print ''
|
||||
|
||||
path = 'src/xenia/cpu/xethunk/xethunk'
|
||||
result = shell_call('clang -emit-llvm -O0 -c %s.c -o %s.bc' % (path, path),
|
||||
throw_on_error=False)
|
||||
if result != 0:
|
||||
return result
|
||||
|
||||
shell_call('build/llvm/release/bin/llvm-dis %s.bc -o %s.ll' % (path, path))
|
||||
|
||||
shell_call('cat %s.ll' % (path))
|
||||
|
||||
print 'Success!'
|
||||
return 0
|
||||
|
||||
|
||||
class CleanCommand(Command):
|
||||
"""'clean' command."""
|
||||
|
||||
|
|
Loading…
Reference in New Issue