Adding libjit.

Removing some old xethunk cruft.
This commit is contained in:
Ben Vanik 2013-05-19 09:23:50 -07:00
parent b018b6fe56
commit 0aa7d1ec05
10 changed files with 7 additions and 59 deletions

3
.gitmodules vendored
View File

@ -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

View File

@ -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++
],
},

View File

@ -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

View File

@ -1,4 +1,3 @@
python xenia-build.py xethunk
python xenia-build.py build
if [ "$?" -ne 0 ]; then

View File

@ -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;

View File

@ -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,

View File

@ -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

1
third_party/libjit vendored Submodule

@ -0,0 +1 @@
Subproject commit d002b47f609617c4609ba4c3982ecb89223cb28c

View File

@ -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."""

View File

@ -16,10 +16,12 @@
'dependencies': [
'gflags',
'wslay',
'third_party/libjit/libjit.gyp:libjit',
],
'export_dependent_settings': [
'gflags',
'wslay',
'third_party/libjit/libjit.gyp:libjit',
],
'direct_dependent_settings': {