#include "CPUID.hpp"
#include "Thread.hpp"
#include "Memory.hpp"
+#include "MutexLock.hpp"
#include <xmmintrin.h>
#include <fstream>
llvm::LLVMContext *context = nullptr;
llvm::Module *module = nullptr;
llvm::Function *function = nullptr;
+
+ sw::BackoffLock codegenMutex;
}
namespace sw
{
using namespace llvm;
- BackoffLock Nucleus::codegenMutex;
Optimization optimization[10] = {InstructionCombining, Disabled};
Nucleus::Nucleus()
{
- codegenMutex.lock(); // Reactor and LLVM are currently not thread safe
+ ::codegenMutex.lock(); // Reactor and LLVM are currently not thread safe
InitializeNativeTarget();
JITEmitDebugInfo = false;
::function = nullptr;
::module = nullptr;
- codegenMutex.unlock();
+ ::codegenMutex.unlock();
}
Routine *Nucleus::acquireRoutine(const wchar_t *name, bool runOptimizations)
// xyzw.parent = this;
}
- Byte8::Byte8(byte x0, byte x1, byte x2, byte x3, byte x4, byte x5, byte x6, byte x7)
+ Byte8::Byte8(uint8_t x0, uint8_t x1, uint8_t x2, uint8_t x3, uint8_t x4, uint8_t x5, uint8_t x6, uint8_t x7)
{
// xyzw.parent = this;
// xyzw.parent = this;
}
- SByte8::SByte8(byte x0, byte x1, byte x2, byte x3, byte x4, byte x5, byte x6, byte x7)
+ SByte8::SByte8(uint8_t x0, uint8_t x1, uint8_t x2, uint8_t x3, uint8_t x4, uint8_t x5, uint8_t x6, uint8_t x7)
{
// xyzw.parent = this;
#include "Nucleus.hpp"
#include "Routine.hpp"
+#include <cstddef>
+#include <cwchar>
+#undef Bool
+
namespace sw
{
class Byte;
{
public:
Byte8();
- Byte8(byte x0, byte x1, byte x2, byte x3, byte x4, byte x5, byte x6, byte x7);
+ Byte8(uint8_t x0, uint8_t x1, uint8_t x2, uint8_t x3, uint8_t x4, uint8_t x5, uint8_t x6, uint8_t x7);
Byte8(int64_t x);
Byte8(RValue<Byte8> rhs);
Byte8(const Byte8 &rhs);
{
public:
SByte8();
- SByte8(byte x0, byte x1, byte x2, byte x3, byte x4, byte x5, byte x6, byte x7);
+ SByte8(uint8_t x0, uint8_t x1, uint8_t x2, uint8_t x3, uint8_t x4, uint8_t x5, uint8_t x6, uint8_t x7);
SByte8(int64_t x);
SByte8(RValue<SByte8> rhs);
SByte8(const SByte8 &rhs);