asiva@google.com
|
58c14696fb
|
Fix a windows build issue
../../dart/runtime/vm/flags.cc:58:26: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
OS::Print("%s: %"Pu64" (%s)\n", name_, *this->uint64_ptr_, comment_);
R=regis@google.com
Review URL: https://codereview.chromium.org//909253002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43669 260f80e4-7a28-3924-810f-c04153c831b5
|
2015-02-10 21:30:28 +00:00 |
|
regis@google.com
|
ad8b021182
|
Process two 32-bit digits as one 64-bit digit in all bigint intrinsics on ARM64.
R=zra@google.com
Review URL: https://codereview.chromium.org//817583003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42611 260f80e4-7a28-3924-810f-c04153c831b5
|
2015-01-05 20:46:48 +00:00 |
|
srdjan@google.com
|
4c8545557a
|
Add inlining ranges/intervals to code objects so that we can map a pc to the inlined stack. The mapping is not fast, used only for disassembly.
Copied from other CL: https://codereview.chromium.org/790213004/
Review URL: https://codereview.chromium.org//817823002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42522 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-12-19 20:03:27 +00:00 |
|
regis@google.com
|
0fb9f43f32
|
Complete and clean up breakpoint support in all 3 debuggers embedded in MIPS,
ARM, and ARM64 simulators.
Implement the same debugging commands in all 3 simulators: stop_sim_at flag, bt,
p icount, break, del, unstop, etc...
R=zra@google.com
Review URL: https://codereview.chromium.org//789903002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42216 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-12-09 19:26:26 +00:00 |
|
regis@google.com
|
6a2f5e6297
|
Implement bigint intrinsics on arm64.
Implement umaddl arm64 instruction (assembler, disassembler, simulator, tests).
Finish implementing cbz and cbnz arm64 instructions (assembler, tests).
R=zra@google.com
Review URL: https://codereview.chromium.org//701233003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41608 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-11-07 17:19:44 +00:00 |
|
johnmccutchan@google.com
|
7bbdfc2e16
|
- Use UnboxedInt32 and UnboxedUint32 representation for LoadIndexedInstr
- Avoid inserting an check class instruction for Uint32 and Int32 arrays on StoreIndexedInstr
- Implement Int32ToDouble on all architectures
- Add Int32 to double instruction to ARM64 and simulator.
- Add Int32 to double instruction to X64.
R=vegorov@google.com, zra@google.com
Review URL: https://codereview.chromium.org//616873003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41025 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-10-09 20:49:15 +00:00 |
|
regis@google.com
|
1026872687
|
Fix 32-bit and 64-bit carry out calculation in arm64 simulator.
Add support for 32-bit and 64-bit addition/subtraction with carry on simarm64.
Add assembler tests.
R=zra@google.com
Review URL: https://codereview.chromium.org//630093004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40989 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-10-08 07:22:06 +00:00 |
|
zra@google.com
|
fb29f5e342
|
Adds ldp and stp instructions to ARM64.
These should be used instead of single
register load and store on frame entry
and exit. I'll update these in another
change.
R=regis@google.com
Review URL: https://codereview.chromium.org//630033003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40960 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-10-07 16:25:56 +00:00 |
|
zra@google.com
|
436a06a381
|
Fixes to run "Hello, world!" on arm64 hardware.
Primarily, in Dart code, instead of using R31 as our
stack pointer, on entry we copy it into a second
register (R18) and use that as our stack pointer after
moving R31 to the Dart stack limit. On calling back
into C++ from Dart code, R31 is restored, and R18 is
cached in the callee-saved register R26.
R=regis@google.com
Review URL: https://codereview.chromium.org//311903004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36930 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-06-03 18:38:28 +00:00 |
|
regis@google.com
|
34dc2dce7a
|
Reduce register pressure on ARM, ARM64, and MIPS.
R=zra@google.com
Review URL: https://codereview.chromium.org//300003015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36764 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-28 20:35:02 +00:00 |
|
zra@google.com
|
6143dd9bad
|
Adds more ARM64 SIMD instructions.
Also, enables simd inlining for arm64.
R=regis@google.com
Review URL: https://codereview.chromium.org//307523002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36694 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-27 16:29:15 +00:00 |
|
iposva@google.com
|
d36cd610cb
|
- Use isolate where it is appropriate.
- Do not emit an name for ExternalLabel.
R=johnmccutchan@google.com, srdjan@google.com
Review URL: https://codereview.chromium.org//306483005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36662 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-27 10:15:50 +00:00 |
|
zra@google.com
|
0676e14a22
|
Adds more SIMD instructions to arm64.
R=regis@google.com
Review URL: https://codereview.chromium.org//295243005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36585 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-23 20:34:29 +00:00 |
|
zra@google.com
|
35d53f5a45
|
Beings adding SIMD support to arm64.
It's still disabled for now, while I continue working.
Also, I tried to use const a bit more consistently in
the arm and arm64 IL.
R=regis@google.com
Review URL: https://codereview.chromium.org//293993013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36465 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-22 00:17:33 +00:00 |
|
zra@google.com
|
eb11b8a7a0
|
Adds far-branches to arm64.
Also fixes bugs and enables tests.
R=regis@google.com
Review URL: https://codereview.chromium.org//283513002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36051 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-12 18:43:08 +00:00 |
|
zra@google.com
|
5d94e8900f
|
Adds single-precision and SIMD load/store to arm64.
Also adds conversion between double an single-precision floats.
R=regis@google.com
Review URL: https://codereview.chromium.org//269343010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35933 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-08 19:06:04 +00:00 |
|
zra@google.com
|
842a42a5a9
|
Adds unary double operations to ARM64, enables many tests.
Also removes disabling of optimization.
R=regis@google.com
Review URL: https://codereview.chromium.org//267283004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35863 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-07 20:04:05 +00:00 |
|
zra@google.com
|
65946f752c
|
Adds arm64 double arithmetic instructions.
Also adds:
- double comparison instructions,
- conditional increment instruction,
- double <-> int conversion instructions,
- IL instructions that use these,
- NoSuchMethod call stub,
- and bug fixes.
R=regis@google.com
Review URL: https://codereview.chromium.org//262333007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35830 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-06 20:50:44 +00:00 |
|
zra@google.com
|
037a72e059
|
Enables many language tests for arm64.
- Adds msub and smulh instructions for implementing
BinarySmiOp.
- Adds fmovdd to move doubles between V registers.
- Implements many stubs and IL instructions. These are
ported from ARM with small fix-ups. Deopt code comes
from x64 because the stack frame layout is the same.
R=regis@google.com
Review URL: https://codereview.chromium.org//263243002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35753 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-05 18:09:08 +00:00 |
|
zra@google.com
|
b3425abdf2
|
Uses double load/store on arm64, enables tests.
R=regis@google.com
Review URL: https://codereview.chromium.org//262793006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35705 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-02 20:16:22 +00:00 |
|
zra@google.com
|
568f467c74
|
Adds double load and store to arm64.
R=regis@google.com
Review URL: https://codereview.chromium.org//264943007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35672 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-02 00:16:02 +00:00 |
|
zra@google.com
|
5be8150a3a
|
Begins work on arm64 floating point instructions.
R=regis@google.com
Review URL: https://codereview.chromium.org//261783005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35661 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-05-01 21:50:17 +00:00 |
|
zra@google.com
|
2dee7e5a6d
|
Enables all startup code for arm64.
Also, enables a few more codegen tests, and adds
a conditional move instruction.
R=regis@google.com
Review URL: https://codereview.chromium.org//253623003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35440 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-25 18:54:46 +00:00 |
|
zra@google.com
|
76dfb827cb
|
Adds load/store from signed, unscaled, 9-bit offset w/ no writeback to arm64.
I missed this before because it was in the docs under the assembler mnemonic ldur.
R=regis@google.com
Review URL: https://codereview.chromium.org//242983006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35222 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-21 20:30:27 +00:00 |
|
zra@google.com
|
fde6c7a829
|
Adds Runtime call stub and Dart entry stub to ARM64.
R=regis@google.com
Review URL: https://codereview.chromium.org//243773002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35190 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-18 23:43:15 +00:00 |
|
zra@google.com
|
25d93a82e2
|
Adds simulator debugger and Stop to arm64.
Also replaces UNIMPLEMENTED in stubs with Stop so
we can enable generation.
R=regis@google.com
Review URL: https://codereview.chromium.org//240283005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35127 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-16 19:57:52 +00:00 |
|
zra@google.com
|
d128fb91ae
|
Adds object pool, LoadImmediate, and LoadObject to ARM64.
Also enables many object tests.
R=regis@google.com
Review URL: https://codereview.chromium.org//239303008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35109 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-16 15:48:33 +00:00 |
|
zra@google.com
|
1c03aa73a8
|
Adds more arithmetic ops to arm64.
R=regis@google.com
Review URL: https://codereview.chromium.org//236173002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35024 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-14 17:03:04 +00:00 |
|
zra@google.com
|
3a21a88e52
|
Adds comparisons, labels, branches.
Also adds compare-and-branch, test-and-branch, and
unconditional branch with 26-bit offset instrucitons
to the disassembler and simulator, but not to the
assembler, yet, since they'll require a bit more
work and this CL is getting big.
R=regis@google.com
Review URL: https://codereview.chromium.org//235363005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34993 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-11 20:40:11 +00:00 |
|
zra@google.com
|
11434b57aa
|
Adds logical operations to arm64.
R=regis@google.com
Review URL: https://codereview.chromium.org//231373003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34901 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-09 22:14:47 +00:00 |
|
srdjan@google.com
|
42ddbe7ff0
|
Fix simarm64 build on Mac OS X
Review URL: https://codereview.chromium.org//229383006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34856 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-08 23:58:23 +00:00 |
|
zra@google.com
|
5ed6eb4cb4
|
Adds ldr and str to arm64.
R=regis@google.com
Review URL: https://codereview.chromium.org//227593012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34831 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-08 15:43:16 +00:00 |
|
zra@google.com
|
dcc2284689
|
Adds subract, move wide immediate instructions to ARM64.
Also adds tests for move, add shift, add extended.
R=regis@google.com
Review URL: https://codereview.chromium.org//214233006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34715 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-03 18:26:11 +00:00 |
|
zra@google.com
|
2fe51715e5
|
Begins work on ARM64, first assembler test.
Most new code is in constants_arm64.h and
{assembler,disassembler,simulator}_arm64.{h,cc}
The rest of the CL just #def's out tests, modifies status files,
and adds UNIMPLEMENTED functions, etc.
R=regis@google.com
Review URL: https://codereview.chromium.org//221133002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34654 260f80e4-7a28-3924-810f-c04153c831b5
|
2014-04-02 17:39:32 +00:00 |
|