Skip to content

Commit

Permalink
Merge pull request #306 from joshuawarner32/openjdk-src-arm-compiler-fix
Browse files Browse the repository at this point in the history
fix compiler problems discovered in openjdk-src arm bootimage build
  • Loading branch information
dicej committed Jul 22, 2014
2 parents 8471bef + f3968d2 commit 6e26ff0
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions src/compile.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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());
Expand Down Expand Up @@ -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);
Expand Down Expand Up @@ -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());
Expand All @@ -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());

Expand Down Expand Up @@ -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);
Expand Down

0 comments on commit 6e26ff0

Please sign in to comment.