mirror of
https://github.com/corda/corda.git
synced 2025-01-21 03:55:00 +00:00
Merge pull request #430 from joshuawarner32/master
Fixes for arm64, new clang, new ios SDK
This commit is contained in:
commit
601546efb7
3
makefile
3
makefile
@ -769,7 +769,8 @@ ifeq ($(kernel),darwin)
|
||||
sdk-dir = $(platform-dir)/Developer/SDKs
|
||||
|
||||
ios-version := $(shell \
|
||||
if test -d $(sdk-dir)/$(target)8.2.sdk; then echo 8.2; \
|
||||
if test -d $(sdk-dir)/$(target)8.3.sdk; then echo 8.3; \
|
||||
elif test -d $(sdk-dir)/$(target)8.2.sdk; then echo 8.2; \
|
||||
elif test -d $(sdk-dir)/$(target)8.1.sdk; then echo 8.1; \
|
||||
elif test -d $(sdk-dir)/$(target)8.0.sdk; then echo 8.0; \
|
||||
elif test -d $(sdk-dir)/$(target)7.1.sdk; then echo 7.1; \
|
||||
|
@ -1703,9 +1703,6 @@ bool instanceOf(Thread* t, GcClass* class_, object o);
|
||||
template <class T>
|
||||
T* GcObject::as(Thread* t UNUSED)
|
||||
{
|
||||
if (this == 0) {
|
||||
return 0;
|
||||
}
|
||||
assertT(t,
|
||||
t->m->unsafe || instanceOf(t,
|
||||
reinterpret_cast<GcClass*>(arrayBodyUnsafe(
|
||||
|
@ -1909,9 +1909,7 @@ void setStubRead(Context* c, StubReadPair* p, Value* v)
|
||||
if (DebugReads) {
|
||||
fprintf(stderr, "add stub read %p to %p\n", r, v);
|
||||
}
|
||||
// TODO: this is rather icky looking... but despite how it looks, it will
|
||||
// not cause an NPE
|
||||
((Event*)0)->addRead(c, v, r);
|
||||
finishAddRead(c, v, r);
|
||||
|
||||
p->value = v;
|
||||
p->read = r;
|
||||
@ -2113,9 +2111,7 @@ void addForkElement(Context* c, Value* v, ForkState* state, unsigned index)
|
||||
if (DebugReads) {
|
||||
fprintf(stderr, "add multi read %p to %p\n", r, v);
|
||||
}
|
||||
// TODO: this is rather icky looking... but despite how it looks, it will not
|
||||
// cause an NPE
|
||||
((Event*)0)->addRead(c, v, r);
|
||||
finishAddRead(c, v, r);
|
||||
|
||||
ForkElement* p = state->elements + index;
|
||||
p->value = v;
|
||||
|
@ -136,16 +136,20 @@ void Event::addRead(Context* c, Value* v, Read* r)
|
||||
v,
|
||||
v->lastRead,
|
||||
this,
|
||||
(this ? this->name() : 0));
|
||||
this->name());
|
||||
}
|
||||
|
||||
r->event = this;
|
||||
r->eventNext = this->reads;
|
||||
this->reads = r;
|
||||
++this->readCount;
|
||||
|
||||
finishAddRead(c, v, r);
|
||||
}
|
||||
|
||||
void finishAddRead(Context* c, Value* v, Read* r)
|
||||
{
|
||||
r->value = v;
|
||||
if (this) {
|
||||
r->event = this;
|
||||
r->eventNext = this->reads;
|
||||
this->reads = r;
|
||||
++this->readCount;
|
||||
}
|
||||
|
||||
if (v->lastRead) {
|
||||
if (DebugReads) {
|
||||
|
@ -90,6 +90,8 @@ class Event {
|
||||
unsigned readCount;
|
||||
};
|
||||
|
||||
void finishAddRead(Context* c, Value* v, Read* r);
|
||||
|
||||
class StubReadPair {
|
||||
public:
|
||||
Value* value;
|
||||
|
@ -237,6 +237,9 @@ class MyArchitecture : public Architecture {
|
||||
case ThreadRegister.index():
|
||||
case ProgramCounter.index():
|
||||
return true;
|
||||
case 18:
|
||||
// x18 is a reserved platform register on arm64
|
||||
return TargetBytesPerWord == 8;
|
||||
|
||||
default:
|
||||
return false;
|
||||
|
@ -8266,11 +8266,11 @@ class CompilationHandlerList {
|
||||
|
||||
void dispose(Allocator* allocator)
|
||||
{
|
||||
if (this) {
|
||||
if (next) {
|
||||
next->dispose(allocator);
|
||||
handler->dispose();
|
||||
allocator->free(this, sizeof(*this));
|
||||
}
|
||||
handler->dispose();
|
||||
allocator->free(this, sizeof(*this));
|
||||
}
|
||||
|
||||
CompilationHandlerList* next;
|
||||
@ -8804,7 +8804,9 @@ class MyProcessor : public Processor {
|
||||
#endif
|
||||
}
|
||||
|
||||
compilationHandlers->dispose(allocator);
|
||||
if(compilationHandlers) {
|
||||
compilationHandlers->dispose(allocator);
|
||||
}
|
||||
|
||||
signals.unregisterHandler(SignalRegistrar::SegFault);
|
||||
signals.unregisterHandler(SignalRegistrar::DivideByZero);
|
||||
|
@ -35,7 +35,7 @@ void* operator new(size_t size)
|
||||
return malloc(size);
|
||||
}
|
||||
|
||||
void operator delete(void*)
|
||||
void operator delete(void*) throw()
|
||||
{
|
||||
abort();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user