mirror of
https://github.com/corda/corda.git
synced 2025-06-13 20:58:19 +00:00
remove redundant Compiler::store srcType parameter
This commit is contained in:
committed by
Joshua Warner
parent
f6bc51647e
commit
33d946d249
@ -112,7 +112,7 @@ class Compiler {
|
|||||||
|
|
||||||
virtual ir::Value* truncate(ir::Type type, ir::Value* src) = 0;
|
virtual ir::Value* truncate(ir::Type type, ir::Value* src) = 0;
|
||||||
|
|
||||||
virtual void store(ir::Type srcType, ir::Value* src, ir::Value* dst) = 0;
|
virtual void store(ir::Value* src, ir::Value* dst) = 0;
|
||||||
virtual ir::Value* load(ir::SignExtendMode signExtend,
|
virtual ir::Value* load(ir::SignExtendMode signExtend,
|
||||||
ir::Value* src,
|
ir::Value* src,
|
||||||
ir::Type dstType) = 0;
|
ir::Type dstType) = 0;
|
||||||
|
@ -2593,18 +2593,14 @@ class MyCompiler: public Compiler {
|
|||||||
return dst;
|
return dst;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void store(ir::Type srcType, ir::Value* src, ir::Value* dst)
|
virtual void store(ir::Value* src, ir::Value* dst)
|
||||||
{
|
{
|
||||||
assert(&c, srcType == src->type);
|
assert(&c, src->type.flavor() == dst->type.flavor());
|
||||||
assert(&c, srcType.flavor() == src->type.flavor());
|
|
||||||
assert(&c, srcType.flavor() == dst->type.flavor());
|
|
||||||
assert(&c,
|
|
||||||
srcType.flavor() != ir::Type::Float || srcType.size()
|
|
||||||
== src->type.size());
|
|
||||||
appendMove(&c,
|
appendMove(&c,
|
||||||
lir::Move,
|
lir::Move,
|
||||||
srcType.size(),
|
src->type.size(),
|
||||||
srcType.size(),
|
src->type.size(),
|
||||||
static_cast<Value*>(src),
|
static_cast<Value*>(src),
|
||||||
dst->type.size(),
|
dst->type.size(),
|
||||||
static_cast<Value*>(dst));
|
static_cast<Value*>(dst));
|
||||||
|
@ -3292,7 +3292,6 @@ void compileDirectInvoke(MyThread* t,
|
|||||||
trace);
|
trace);
|
||||||
|
|
||||||
c->store(
|
c->store(
|
||||||
types.address,
|
|
||||||
frame->absoluteAddressOperand(returnAddressPromise),
|
frame->absoluteAddressOperand(returnAddressPromise),
|
||||||
c->memory(
|
c->memory(
|
||||||
c->threadRegister(), types.address, TARGET_THREAD_TAILADDRESS));
|
c->threadRegister(), types.address, TARGET_THREAD_TAILADDRESS));
|
||||||
@ -3790,7 +3789,7 @@ intrinsic(MyThread* t, Frame* frame, object target)
|
|||||||
ir::Value* value = frame->popInt();
|
ir::Value* value = frame->popInt();
|
||||||
ir::Value* address = popLongAddress(frame);
|
ir::Value* address = popLongAddress(frame);
|
||||||
frame->popObject();
|
frame->popObject();
|
||||||
c->store(types.i4, value, c->memory(address, types.i1));
|
c->store(value, c->memory(address, types.i1));
|
||||||
return true;
|
return true;
|
||||||
} else if ((MATCH(methodName(t, target), "getShort")
|
} else if ((MATCH(methodName(t, target), "getShort")
|
||||||
and MATCH(methodSpec(t, target), "(J)S"))
|
and MATCH(methodSpec(t, target), "(J)S"))
|
||||||
@ -3810,7 +3809,7 @@ intrinsic(MyThread* t, Frame* frame, object target)
|
|||||||
ir::Value* value = frame->popInt();
|
ir::Value* value = frame->popInt();
|
||||||
ir::Value* address = popLongAddress(frame);
|
ir::Value* address = popLongAddress(frame);
|
||||||
frame->popObject();
|
frame->popObject();
|
||||||
c->store(types.i4, value, c->memory(address, types.i2));
|
c->store(value, c->memory(address, types.i2));
|
||||||
return true;
|
return true;
|
||||||
} else if ((MATCH(methodName(t, target), "getInt")
|
} else if ((MATCH(methodName(t, target), "getInt")
|
||||||
and MATCH(methodSpec(t, target), "(J)I"))
|
and MATCH(methodSpec(t, target), "(J)I"))
|
||||||
@ -3834,7 +3833,7 @@ intrinsic(MyThread* t, Frame* frame, object target)
|
|||||||
frame->popObject();
|
frame->popObject();
|
||||||
ir::Type type = MATCH(methodName(t, target), "putInt") ? types.i4
|
ir::Type type = MATCH(methodName(t, target), "putInt") ? types.i4
|
||||||
: types.f4;
|
: types.f4;
|
||||||
c->store(type, value, c->memory(address, type));
|
c->store(value, c->memory(address, type));
|
||||||
return true;
|
return true;
|
||||||
} else if ((MATCH(methodName(t, target), "getLong")
|
} else if ((MATCH(methodName(t, target), "getLong")
|
||||||
and MATCH(methodSpec(t, target), "(J)J"))
|
and MATCH(methodSpec(t, target), "(J)J"))
|
||||||
@ -3858,7 +3857,7 @@ intrinsic(MyThread* t, Frame* frame, object target)
|
|||||||
frame->popObject();
|
frame->popObject();
|
||||||
ir::Type type = MATCH(methodName(t, target), "putLong") ? types.i8
|
ir::Type type = MATCH(methodName(t, target), "putLong") ? types.i8
|
||||||
: types.f8;
|
: types.f8;
|
||||||
c->store(type, value, c->memory(address, type));
|
c->store(value, c->memory(address, type));
|
||||||
return true;
|
return true;
|
||||||
} else if (MATCH(methodName(t, target), "getAddress")
|
} else if (MATCH(methodName(t, target), "getAddress")
|
||||||
and MATCH(methodSpec(t, target), "(J)J"))
|
and MATCH(methodSpec(t, target), "(J)J"))
|
||||||
@ -3875,7 +3874,7 @@ intrinsic(MyThread* t, Frame* frame, object target)
|
|||||||
ir::Value* value = frame->popLong();
|
ir::Value* value = frame->popLong();
|
||||||
ir::Value* address = popLongAddress(frame);
|
ir::Value* address = popLongAddress(frame);
|
||||||
frame->popObject();
|
frame->popObject();
|
||||||
c->store(types.i8, value, c->memory(address, types.address));
|
c->store(value, c->memory(address, types.address));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -4251,40 +4250,28 @@ compile(MyThread* t, Frame* initialFrame, unsigned initialIp,
|
|||||||
} break;
|
} break;
|
||||||
|
|
||||||
case fastore:
|
case fastore:
|
||||||
c->store(types.f4,
|
c->store(value, c->memory(array, types.f4, TargetArrayBody, index));
|
||||||
value,
|
|
||||||
c->memory(array, types.f4, TargetArrayBody, index));
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case iastore:
|
case iastore:
|
||||||
c->store(types.i4,
|
c->store(value, c->memory(array, types.i4, TargetArrayBody, index));
|
||||||
value,
|
|
||||||
c->memory(array, types.i4, TargetArrayBody, index));
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case bastore:
|
case bastore:
|
||||||
c->store(types.i4,
|
c->store(value, c->memory(array, types.i1, TargetArrayBody, index));
|
||||||
value,
|
|
||||||
c->memory(array, types.i1, TargetArrayBody, index));
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case castore:
|
case castore:
|
||||||
case sastore:
|
case sastore:
|
||||||
c->store(types.i4,
|
c->store(value, c->memory(array, types.i2, TargetArrayBody, index));
|
||||||
value,
|
|
||||||
c->memory(array, types.i2, TargetArrayBody, index));
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case dastore:
|
case dastore:
|
||||||
c->store(types.f8,
|
c->store(value, c->memory(array, types.f8, TargetArrayBody, index));
|
||||||
value,
|
|
||||||
c->memory(array, types.f8, TargetArrayBody, index));
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case lastore:
|
case lastore:
|
||||||
c->store(types.i8,
|
c->store(value, c->memory(array, types.i8, TargetArrayBody, index));
|
||||||
value,
|
|
||||||
c->memory(array, types.i8, TargetArrayBody, index));
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} break;
|
} break;
|
||||||
@ -5827,7 +5814,6 @@ compile(MyThread* t, Frame* initialFrame, unsigned initialIp,
|
|||||||
case ByteField:
|
case ByteField:
|
||||||
case BooleanField:
|
case BooleanField:
|
||||||
c->store(
|
c->store(
|
||||||
types.i4,
|
|
||||||
value,
|
value,
|
||||||
c->memory(table, types.i1, targetFieldOffset(context, field)));
|
c->memory(table, types.i1, targetFieldOffset(context, field)));
|
||||||
break;
|
break;
|
||||||
@ -5835,35 +5821,30 @@ compile(MyThread* t, Frame* initialFrame, unsigned initialIp,
|
|||||||
case CharField:
|
case CharField:
|
||||||
case ShortField:
|
case ShortField:
|
||||||
c->store(
|
c->store(
|
||||||
types.i4,
|
|
||||||
value,
|
value,
|
||||||
c->memory(table, types.i2, targetFieldOffset(context, field)));
|
c->memory(table, types.i2, targetFieldOffset(context, field)));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case FloatField:
|
case FloatField:
|
||||||
c->store(
|
c->store(
|
||||||
types.f4,
|
|
||||||
value,
|
value,
|
||||||
c->memory(table, types.f4, targetFieldOffset(context, field)));
|
c->memory(table, types.f4, targetFieldOffset(context, field)));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case IntField:
|
case IntField:
|
||||||
c->store(
|
c->store(
|
||||||
types.i4,
|
|
||||||
value,
|
value,
|
||||||
c->memory(table, types.i4, targetFieldOffset(context, field)));
|
c->memory(table, types.i4, targetFieldOffset(context, field)));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DoubleField:
|
case DoubleField:
|
||||||
c->store(
|
c->store(
|
||||||
types.f8,
|
|
||||||
value,
|
value,
|
||||||
c->memory(table, types.f8, targetFieldOffset(context, field)));
|
c->memory(table, types.f8, targetFieldOffset(context, field)));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case LongField:
|
case LongField:
|
||||||
c->store(
|
c->store(
|
||||||
types.i8,
|
|
||||||
value,
|
value,
|
||||||
c->memory(table, types.i8, targetFieldOffset(context, field)));
|
c->memory(table, types.i8, targetFieldOffset(context, field)));
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user