diff --git a/src/cmd/gc/range.c b/src/cmd/gc/range.c index dca3a54542c204da3241ef451b19cdfffdd239b8..b57639b232564979a471e7684f16e12bab8548b8 100644 --- a/src/cmd/gc/range.c +++ b/src/cmd/gc/range.c @@ -115,7 +115,9 @@ walkrange(Node *n) v2 = n->list->next->n; hv2 = N; - if(v2 == N && t->etype == TARRAY) { + // TODO(kaib): re-enable this optimization on arm once we are on par with 6g/8g + // see http://code.google.com/p/go/issues/detail?id=943 + if(v2 == N && t->etype == TARRAY && thechar != '5') { // will have just one reference to argument. // no need to make a potentially expensive copy. ha = a; diff --git a/test/golden-arm.out b/test/golden-arm.out index 449424dcabe54026555365a17de9d201e076a82a..a8628fe1b6499e6e9f06404587062481ac644a67 100644 --- a/test/golden-arm.out +++ b/test/golden-arm.out @@ -52,9 +52,9 @@ FAIL Hello World! =========== ken/cplx0.go -(+1.066132e-308+1.313301e-308i) +(+1.066132e-308+1.313303e-308i) (+1.066132e-308+1.066132e-308i) -(+1.066132e-308+1.313301e-308i) +(+1.066132e-308+1.313303e-308i) (+1.066132e-308+1.066132e-308i) =========== ken/cplx3.go