// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. // Test optimization of redundant array loads. var A = [0,2,3]; test1(a) { int x = a[0]; int y = a[1]; ++a[0]; return a[0] + y + a[2]; } int test2(a) { return a[2] + a[2]; } main() { for (int i = 0; i < 10000; i++) { test1(A); test2(A); } Expect.equals(10006, test1(A)); Expect.equals(6, test2(A)); }