Merge pull request #306 from joshuawarner32/openjdk-src-arm-compiler-fix

fix compiler problems discovered in openjdk-src arm bootimage build
This commit is contained in:
Joel Dice 2014-07-22 17:12:42 -06:00
commit 6e26ff0c0b

View File

@ -1648,6 +1648,7 @@ class Frame {
void storeLarge(ir::Type type, unsigned index)
{
assertT(t, type.rawSize() == 8);
storeLocal(context, 2, type, popLarge(type), index);
unsigned ti = translateLocalIndex(context, 2, index);
assertT(t, ti + 1 < localSize());
@ -1691,7 +1692,7 @@ class Frame {
{
ir::Value* s0 = c->pop(ir::Type::i4());
if (get(sp - 2) == ir::Type::i8()) {
if (get(sp - 2).rawSize() == 8) {
ir::Value* s1 = c->pop(ir::Type::i8());
c->push(ir::Type::i4(), s0);
@ -1724,7 +1725,7 @@ class Frame {
void dup2()
{
if (get(sp - 1) == ir::Type::i8()) {
if (get(sp - 1).rawSize() == 8) {
c->push(ir::Type::i8(), c->peek(2, 0));
} else {
ir::Value* s0 = c->pop(ir::Type::i4());
@ -1750,7 +1751,7 @@ class Frame {
void dup2X1()
{
if (get(sp - 1) == ir::Type::i8()) {
if (get(sp - 1).rawSize() == 8) {
ir::Value* s0 = c->pop(ir::Type::i8());
ir::Value* s1 = c->pop(ir::Type::i4());
@ -1787,10 +1788,10 @@ class Frame {
void dup2X2()
{
if (get(sp - 1) == ir::Type::i8()) {
if (get(sp - 1).rawSize() == 8) {
ir::Value* s0 = c->pop(ir::Type::i8());
if (get(sp - 3) == ir::Type::i8()) {
if (get(sp - 3).rawSize() == 8) {
ir::Value* s1 = c->pop(ir::Type::i8());
c->push(ir::Type::i8(), s0);