Commit Graph

774 Commits

Author SHA1 Message Date
kustermann@google.com a8857ed49c Status file updates for arm -> remove Skip markers
R=ricow@google.com

Review URL: https://codereview.chromium.org//15956005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23242 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-28 09:09:38 +00:00
zra@google.com 354b204cf0 Enables optimization on MIPS
- Exposes double precision rather than single precision floating point registers
  to architecture generic code. This entails a mechanical change in the assembler
  to floating point instructions.
- Adds slti, sltiu instructions for comparison with small immediates, and uses
  them in the Branch(Un)Signed* macros.
- Fixes a bug in the intermediate language comparison/branching instructions
  caused by using subu for comparison. Now it uses two slt instructions.
- Fixes register use bugs in intermediate language.
- More uses of NULLREG instead of loading Object::null()

R=regis@google.com

Review URL: https://codereview.chromium.org//16022011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23190 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-24 23:45:41 +00:00
regis@google.com ac2e804324 Fix a bug in optimized ARM code.
Fix a bug in deoptimization (wrong stack layout assumption, worked on Intel by
chance).
Implement megamorphic instance call on ARM.
Improve line number reporting in simulator backtraces.

R=zra@google.com

Review URL: https://codereview.chromium.org//15692005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23169 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-24 18:52:34 +00:00
regis@google.com 89b673467c Enable code optimization on ARM.
Disable failing tests.

R=zra@google.com

Review URL: https://codereview.chromium.org//15697009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23037 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-22 18:53:51 +00:00
asiva@google.com 9041d156a0 Create test isolates using a snapshot, this ensures that we do not depend
on the location of core libraries which can be a problem when we copy
the run_vm_tests executable to a different machine.

R=zra@google.com

Review URL: https://codereview.chromium.org//15736011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23030 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-22 17:25:25 +00:00
scheglov@google.com 14cebd0b05 Report ParserErrorCode.MISSING_IDENTIFIER
Fixes many trivial co19 tests.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//15260002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22875 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-17 21:37:14 +00:00
sgjesse@google.com b8c729fe9e Mark test as flaky
R=iposva@google.com
BUG=https://code.google.com/p/dart/issues/detail?id=10409

Review URL: https://codereview.chromium.org//14730006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22360 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-03 11:11:01 +00:00
zra@google.com 87ae3bb45f Allows "Hello, world!" to run on ARM hardware.
Also, enables more vm tests on SIMMIPS.

R=regis@google.com

Review URL: https://codereview.chromium.org//14605006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22344 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-02 22:58:52 +00:00
regis@google.com 303011f48d Enable all vm tests on simarm (skip 2 timing out byte array tests).
Reduce number of iterations in inline_stack_frame_test to avoid time out.

R=zra@google.com

Review URL: https://codereview.chromium.org//14651005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22280 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-01 21:10:00 +00:00
zra@google.com 09f3f2537e Uses slt and sltu for signed vs. unsigned comparison by the MIPS assembler.
Previously, the sequence subu/b{gt,le,...}z was used, which fails to
distinguish between signed and unsigned comparison.

R=regis@google.com

Review URL: https://codereview.chromium.org//14556002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22159 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-30 00:35:09 +00:00
zra@google.com 755a90a8d0 Disables SIMMIPS test that is timing out.
Review URL: https://codereview.chromium.org//14293023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22136 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-29 18:05:07 +00:00
vegorov@google.com 8607801589 Ensure that safepoints are assigned to the live ranges of constants.
R=fschneider@google.com
BUG=dart:10272

Review URL: https://codereview.chromium.org//14542004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22124 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-29 15:51:15 +00:00
whesse@google.com 0f6e4f5c64 Suppress test failure due to issue 10272.
BUG=dartbug.com/10272
R=fschneider@google.com

Review URL: https://codereview.chromium.org//14509017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22120 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-29 13:38:48 +00:00
zra@google.com 566643cece Disables a debugger test for MIPS.
Debug_InterruptIsolate is running in less than a second locally,
but timing out on the buildbot. Disabling for now until I can
figure out what is going on.

Review URL: https://codereview.chromium.org//14497002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22043 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-25 18:20:47 +00:00
zra@google.com 632e9c7aaf Implements missing features to run Hello, World in checked mode on MIPS.
Also re-enables a stack frame test that was disabled in checked mode.

Review URL: https://codereview.chromium.org//14431004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21951 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-24 15:36:40 +00:00
zra@google.com 8e2bd19051 Disable a stack frame test in checked mode on simulated MIPS.
Review URL: https://codereview.chromium.org//13843014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21909 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-23 22:10:23 +00:00
regis@google.com ea04c34362 Uncomment more vm tests on ARM (and some on MIPS too).
Implement context allocation stub.
Some cleanup.

Review URL: https://codereview.chromium.org//14323003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21626 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-17 16:02:02 +00:00
zra@google.com e8f86c5d3a Adds support for UseDartApi vm test on MIPS.
Also, adds:
- xori instruction,
- SubuDetectOverflow (like AdduDetectOverflow).
Review URL: https://codereview.chromium.org//13884017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21396 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-12 22:20:32 +00:00
erikcorry@google.com 9d044d3f20 dart2js: Allow 'throw' when inlining
R=karlklose@google.com
BUG=

Review URL: https://codereview.chromium.org//13947004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21259 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-11 09:20:28 +00:00
zra@google.com 2c5cea8d4e Supports FrameLookup vm test on MIPS
As with the similar CL for ARM, also:
- Supports inline allocation of objects.
- Supports checking of inline cache and instance calls.
- Supports subtype test cache.
- Supports (some) equality checks.
- Supports for (some) conditional branches.
- Supports for pool pointer setup in stubs.
Review URL: https://codereview.chromium.org//14076005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21233 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-10 21:59:57 +00:00
regis@google.com 46a5dbeb26 Support UseDartApi vm test on ARM.
Review URL: https://codereview.chromium.org//13671004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20981 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-05 16:46:53 +00:00
zra@google.com 0cc80971fb Implements type checking in MIPS needed for FindCodeObject test.
Review URL: https://codereview.chromium.org//13619008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20932 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-04 17:55:06 +00:00
zra@google.com 9e05e96e90 Fixes a bug in MIPS simulator runtime call handling.
Also:
- Fixes a bug in the MIPS SimulatorDebugger that
  causes a crash if the pc is an illegal address
- Reenables the FindCodeObject test on MIPS when
  checking is off
Review URL: https://codereview.chromium.org//13489008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20924 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-04 16:56:00 +00:00
zra@google.com 2be466ad31 Turn off FindCodeObject for simmips.
I hadn't run it with type checks, and so I've got some more work to do on it.
Review URL: https://codereview.chromium.org//13584006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20896 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-03 21:58:45 +00:00
zra@google.com fd72ee418a Implements optional parameter handling in MIPS vm.
- Deocdes ic data and argument descriptor.
- Removes SUB instruction from assembler and disassembler.
Review URL: https://codereview.chromium.org//13474009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20895 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-03 21:43:52 +00:00
regis@google.com 05e2ba9540 Support FrameLookup vm test on ARM, requiring among other things:
Maintain a separate top_exit_frame_info for simulated frames and use it to
verify that longjumps are safe.
Make sure unwinding of scopes works in the presence of a simulator.
Support inline allocation of objects.
Support checking of inline cache and instance calls.
Support subtype test cache.
Support (some) equality checks.
Support for (some) conditional branches.
Support for pool pointer setup in stubs.
Review URL: https://codereview.chromium.org//13502002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20890 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-03 20:17:14 +00:00
srdjan@google.com a6012ce6be FIx linux simarm and simmips: disable tests requiring dart execution.
Review URL: https://codereview.chromium.org//13585002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20887 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-03 19:53:17 +00:00
srdjan@google.com ec54a6e409 Mark CallLeafRuntimeStubCode as failing on Mips/Mac OS X.
Added some cleanups.
Review URL: https://codereview.chromium.org//13575002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20885 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-03 19:42:29 +00:00
zra@google.com 3e080d1b34 Adds native/leaf runtime call stub and redirection on MIPS.
Review URL: https://codereview.chromium.org//13473010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20813 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-02 20:24:55 +00:00
regis@google.com b24d57ca66 Support checked mode for VM tests on ARM.
Review URL: https://codereview.chromium.org//12773008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20623 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-28 17:41:35 +00:00
zra@google.com 463b651f78 Adds Stop to MIPS. Starts on MIPS call patcher.
Review URL: https://codereview.chromium.org//12703028

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20527 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-26 17:50:43 +00:00
regis@google.com 0c27ffc6a4 Implement optional parameter handling in ARM vm.
Enable FindCodeObject test on ARM (production mode only for now).
Make sure the object pool is allocated in the old space.
Some more code cleanup on IA32 and X64 (use named constants).
Review URL: https://codereview.chromium.org//12663024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20399 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-22 18:30:35 +00:00
aprelev@gmail.com b7ba136b4b Added support for redirecting factories in dart api.
BUG=dartbug.com/6958

Review URL: https://codereview.chromium.org//12496011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20366 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-22 03:31:14 +00:00
regis@google.com 7b5a610084 Make allocation of Dart parameters and local variables architecture independent.
Enable a couple more vm tests on ARM.
Fix function usage counter access on ARM.
Review URL: https://codereview.chromium.org//12776006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20048 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-14 21:33:03 +00:00
regis@google.com 6a701789b9 Decode ic data and arguments descriptor passed in calls on ARM.
Review URL: https://codereview.chromium.org//12518016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19827 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-11 23:15:48 +00:00
regis@google.com 7766ac76d4 Implement leaf runtime call stub on ARM and corresponding call redirection
in ARM simulator.
Implement jump patching on ARM.
Add missing ICache flush calls.
Review URL: https://codereview.chromium.org//12439005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19724 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-08 21:16:46 +00:00
regis@google.com b95087eb73 Implement native call stub on ARM and native call redirection in ARM simulator.
Pass PatchStaticCall test.
Review URL: https://codereview.chromium.org//12629004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19704 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-08 18:22:14 +00:00
asiva@google.com 825d996682 Update status file to remove skip of byte_array* tests on windows.
Review URL: https://codereview.chromium.org//12386063

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19343 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-01 22:57:00 +00:00
asiva@google.com 614b946f8a Resubmit change 19074.
Review URL: https://codereview.chromium.org//12335111

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19096 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-26 23:24:24 +00:00
tball@google.com 73bde21dea Corrected test suppression from previous CL.
Review URL: https://codereview.chromium.org//12317117

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19022 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-26 00:12:33 +00:00
johnmccutchan@google.com a09b7810aa One more test
Review URL: https://codereview.chromium.org//12340062

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19007 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-25 22:05:03 +00:00
johnmccutchan@google.com 45e3893f27 Fix dart2js breakage from Simd landing
Review URL: https://codereview.chromium.org//12310117

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19004 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-25 21:50:04 +00:00
regis@google.com 8d24d2b98a Implement ARM disassembler.
Implement ARM call patcher.
Review URL: https://codereview.chromium.org//12301042

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@18769 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-20 17:28:35 +00:00
asiva@google.com 80e281a078 Fix for issues 6080 -
- Read the saved context from the entry frame when straddling across C++ frames while iterating over a stack trace in the debugger. This ensures that the correct context is setup in the ActivationFrame structure in these scenarios (instead of the empty context).

- Read the saved context from the caller's frame when iterating over a stack trace in the debugger. The compiler saves the context in the caller frame before invoking closures, we read this saved context when iterating the stack trace.
Review URL: https://codereview.chromium.org//12179020

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@18235 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-07 22:43:16 +00:00
asiva@google.com d6c8e4f892 Add unit tests which reliabily reproduces the error condition reported in Issue 6080 without the need for a specialized and inconsistent private environment.
Review URL: https://codereview.chromium.org//12218046

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@18232 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-07 20:55:21 +00:00
regis@google.com 5675b85979 Generate first ARM assembler test and execute (simulate) it.
RFC: First draft showing how generated ARM code accesses GC'ed objects and
accesses patched call targets.
Review URL: https://codereview.chromium.org//12224024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@18200 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-07 00:55:47 +00:00
fschneider@google.com 7fc8f72c25 Inline getters of byte array view in the optimized flow graph.
This CL provides inline IL code for the getters _getInt8, _getInt16, etc.
to speed up [] and byte array views.

The code uses the existing LoadIndexed instructions by passing a index
scale factor explicitly: For normal arrays loads, the scale factor is equal
to the element size. For byte array access, the scale factor is always 1.

I'm adding inlined setters in a separate CL.
Review URL: https://codereview.chromium.org//12218008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@18173 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-06 15:18:57 +00:00
antonm@google.com 5a9cc92093 Revert changes 17962-3 which break Dartium Debug build.
TBR=ricow@google.com

Review URL: https://codereview.chromium.org//12079117

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17977 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-01 12:45:42 +00:00
regis@google.com 15495fcd94 Temporarily disabling snapshot tests failing on Windows until further
investigation.
Review URL: https://codereview.chromium.org//12082113

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17963 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-01 03:21:39 +00:00
fschneider@google.com 77c1e9add5 Fix test status for my new tests running with dartc.
TBR=kmillikin@google.com
Review URL: https://codereview.chromium.org//12094031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17758 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-29 13:24:22 +00:00