Commit Graph

5709 Commits

Author SHA1 Message Date
johnniwinther@google.com 1274e083f5 Error produced for missing var, final, const or type on field declarations.
BUG=2997
TEST=tests/language/field_decl_missing_var_type_test

Review URL: https://chromiumcodereview.appspot.com//10690106

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9585 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-12 09:22:53 +00:00
johnniwinther@google.com fdbabb995e Dartdoc and Apidoc updated to use dart2js through the mirror system.
BUG=3414

Review URL: https://chromiumcodereview.appspot.com//10701091

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9584 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-12 08:52:19 +00:00
ager@google.com 0d14ec42be Guard against integer overflow in process constructor.
I have set an arbitrary limit of around one million arguments. I
see no reasonable use of the Process API where that would be a
problem.

R=whesse@google.com,turnidge@google.com
BUG=dartbug.com/1751
TEST=None, can't happen right now but might in the future.

Review URL: https://chromiumcodereview.appspot.com//10690160

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9583 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-12 08:35:10 +00:00
smok@google.com b79fd16adb dart2dart introduce "emitter" that that generates source code.
Review URL: https://chromiumcodereview.appspot.com//10694151

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9581 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-12 07:46:26 +00:00
antonm@google.com 663662028e Clean sort_helper.dart a bit: remove printing.
R=ngeoffrey@google.com

Review URL: https://chromiumcodereview.appspot.com//10692157

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9580 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-12 07:24:07 +00:00
sra@google.com 0e37190b18 Refresh dart:html
Review URL: https://chromiumcodereview.appspot.com//10701153

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9579 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-12 02:15:48 +00:00
srdjan@google.com 9b391ef9cf Add some missing x64 instruction variations.
Review URL: https://chromiumcodereview.appspot.com//10696183

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9578 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-12 00:41:45 +00:00
scheglov@google.com c4327d6db5 Issue 3986. Class member cannot have the same name as the class
http://code.google.com/p/dart/issues/detail?id=3986

R=brianwilkerson@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//10735039

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9577 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-12 00:31:07 +00:00
gram@google.com e75fb92bcb Added ability to disable logging in mocks, to avoid the memory overhead if you don't need behavior verification of the mock itself.
Changed exceptions to end with periods - seems more Darty.
Review URL: https://chromiumcodereview.appspot.com//10694146

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9575 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 23:32:23 +00:00
nweiz@google.com a6466ffe20 Make VersionSolver actually return PackageIds.
Review URL: https://chromiumcodereview.appspot.com//10701146

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9574 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 22:57:44 +00:00
srdjan@google.com e74f5a721b Implement more intrinisification for x64 (not as inlined code but as header of the target).
Review URL: https://chromiumcodereview.appspot.com//10701147

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9573 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 22:37:41 +00:00
gram@google.com b0e10499c3 CallMatchers can now be null, or take null for a method name. This might be
useful if we want to do things like find all method calls that returned a 
certain value.
Review URL: https://chromiumcodereview.appspot.com//10689148

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9570 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 19:57:52 +00:00
floitsch@google.com 95847193aa Update status file.
Review URL: https://chromiumcodereview.appspot.com//10690141

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9568 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 19:28:49 +00:00
nweiz@google.com b2ee421a78 Add support to the version solver for sources that only have a single version per package.
Review URL: https://chromiumcodereview.appspot.com//10690127

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9567 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 19:14:35 +00:00
floitsch@google.com 4ea98500ac Fix typo.
Review URL: https://chromiumcodereview.appspot.com//10696175

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9565 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 19:14:12 +00:00
floitsch@google.com de90cce3e2 Inline compareTo for numbers into min and max.
Review URL: https://chromiumcodereview.appspot.com//10690086

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9564 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 19:00:40 +00:00
vegorov@google.com 1bd5a9b414 Skeleton of a linear scan register allocator.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//10696151

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9563 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 18:52:17 +00:00
srdjan@google.com 94192b98a1 Use class id instead of class in subtype test cache.
Review URL: https://chromiumcodereview.appspot.com//10695136

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9559 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 18:16:30 +00:00
turnidge@google.com 9cbae35238 Don't allow OS::SNPrint or OS::VSNPrint to return negative values.
If we encounter conditions that would have caused vsnprintf to return
a negative value, then something pretty wild is going on.  We choose
to terminate the vm when this occurs.

This fixes security bug 1745.
Review URL: https://chromiumcodereview.appspot.com//10696165

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9558 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 17:54:24 +00:00
vegorov@google.com 1ae72fbd8b Change comparison-to-branch fusion to actually remove comparison from the graph.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//10698153

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9556 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 17:41:54 +00:00
antonm@google.com f7eb436167 Provide proper Dartium support for _getNewIsolateId().
R=vsm@google.com

Review URL: https://chromiumcodereview.appspot.com//10693146

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9555 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 17:33:32 +00:00
antonm@google.com dd491625ca Simplify ReceivePortSync.receive implementation.
R=vsm@google.com

Review URL: https://chromiumcodereview.appspot.com//10695147

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9553 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 16:55:44 +00:00
antonm@google.com 4f0699c0b1 Reuse _dispatchEvent for sync message sending.
R=vsm@google.com

Review URL: https://chromiumcodereview.appspot.com//10694134

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9552 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 16:14:15 +00:00
smok@google.com 8b8c0d1b5b Fix getters/setters unparsing, they appeared as ordinary methods without get/set keywords.
Review URL: https://chromiumcodereview.appspot.com//10698154

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9551 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 16:10:28 +00:00
smok@google.com 3fa18d1a27 Fix unparsing of variable definitions.
Example affecting method with method args:
foo(f(arg)){}

would unparse to:
foo(var f(arg)){}

Also correctly unparse variable definition modifiers.

Review URL: https://chromiumcodereview.appspot.com//10735053

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9550 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 14:00:34 +00:00
floitsch@google.com 14b781bcd1 Refactor SsaBranchBuilder.
Review URL: https://chromiumcodereview.appspot.com//10693143

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9549 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 12:34:53 +00:00
ager@google.com 0ef33295a7 Bring back most of the performance lost when fixing union on types.
We lost the basic propagation of known field types from constructors.

R=floitsch@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//10704156

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9548 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 12:32:57 +00:00
floitsch@google.com c8cd641308 Fix usage of UNKNOWN/CONFLICTING types for union.
Fixes issue 4033.

Review URL: https://chromiumcodereview.appspot.com//10735051

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9547 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 10:34:58 +00:00
podivilov@google.com d816c0104e Remove native_gc_test from html.status (issue 2538 is fixed).
R=antonm@google.com

Review URL: https://chromiumcodereview.appspot.com//10736029

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9546 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 10:20:19 +00:00
lrn@google.com 655a65060e Include new corelib/unified dir in sdk for dart2js
TBR=floitsch

Review URL: https://chromiumcodereview.appspot.com//10735050

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9545 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 09:36:12 +00:00
lrn@google.com 42f353fad1 Patch methods in classes.
Add math library in corelib/unified. Location subject to change.
Made _Random's implementation external and patched it to use JS random.
Made "external" marking acually work.

Review URL: https://chromiumcodereview.appspot.com//10696147

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9544 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 08:47:24 +00:00
hausner@google.com a8f0861510 Fix bug in SendPortSync serialization
Review URL: https://chromiumcodereview.appspot.com//10698150

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9543 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 08:45:07 +00:00
smok@google.com b929ce15cc dart2dart fix synthesized constructor appearing in unparser. Don't output it.
For example, if we have:
class A {
}
main() {
  new A();
}

that would result in:
class A{class}...

that "class" is the unparse result of synthesized constructor.

Review URL: https://chromiumcodereview.appspot.com//10735030

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9541 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 04:31:36 +00:00
nweiz@google.com 97269ad9ac Make the Git source install to the system cache.
This is the same change as r9527, except it doesn't use the --progress flag
which is unsupported on the buildbot.

Review URL: https://chromiumcodereview.appspot.com//10694119

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9540 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 00:37:27 +00:00
asiva@google.com 08c662b1c0 Represent tokens as a compressed stream instead of an array.
On x86:

Original sizes:
Size of isolate snapshot = 925655
New space (0k of 32768k) Old space (1700k of 1792k) Code space (0k of 0k)
out/ReleaseIA32/run_vm_tests --benchmarks
CorelibCompileAll(RunTime): 80944
CorelibIsolateStartup(RunTime): 5636
UseDartApi(RunTime): 404620
Dart2JSCompileAll(RunTime): 1379683
FrameLookup(RunTime): 45

Size with the new TokenStream implementation:
Size of isolate snapshot = 851352
New space (0k of 32768k) Old space (1368k of 1536k) Code space (0k of 0k)
out/ReleaseIA32/run_vm_tests --benchmarks
CorelibCompileAll(RunTime): 76918
CorelibIsolateStartup(RunTime): 4056
UseDartApi(RunTime): 502111
Dart2JSCompileAll(RunTime): 1251646
FrameLookup(RunTime): 45

(saves about 332k out of the original TokenStream size of 410k)

On x64:

Original sizes:
Size of isolate snapshot = 924865
New space (0k of 32768k) Old space (3234k of 3444k) Code space (0k of 0k)
out/ReleaseX64/run_vm_tests --benchmarks
CorelibCompileAll(RunTime): 109660
CorelibIsolateStartup(RunTime): 3985
UseDartApi(RunTime): 463009
Dart2JSCompileAll(RunTime): 2170309
FrameLookup(RunTime): 35

Size with the new TokenStream implementation:
Size of isolate snapshot = 849675
New space (0k of 32768k) Old space (2436k of 2560k) Code space (0k of 0k)
out/ReleaseX64/run_vm_tests --benchmarks
CorelibCompileAll(RunTime): 98716
CorelibIsolateStartup(RunTime): 2938
UseDartApi(RunTime): 509149
Dart2JSCompileAll(RunTime): 2042273
FrameLookup(RunTime): 39

(saves about 798k out of the original TokenStream size of 810k)

Token stats:
Number of tokens:   101470
  Literal tokens:   4550
    Ident tokens:   33020
Review URL: https://chromiumcodereview.appspot.com//10697055

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9539 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-11 00:11:58 +00:00
regis@google.com 1e055acce8 Stop passing location argument to run time calls, since it is stored in the pc
descriptor.
Various cleanups.
Review URL: https://chromiumcodereview.appspot.com//10701131

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9538 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 23:59:09 +00:00
vsm@google.com 9323a6d742 Add registerPort / lookupPort to generated interfaces with documentation
Note, the implementations are already there in Dartium and Dart2JS.
This will make the APIs show up in the Editor and dartdoc.

Review URL: https://chromiumcodereview.appspot.com//10689150

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9537 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 23:54:37 +00:00
asiva@google.com 8269202ff2 Add quotes around strings when generating source from the token stream.
Review URL: https://chromiumcodereview.appspot.com//10765017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9536 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 23:19:57 +00:00
asiva@google.com 7ba3fa9503 Invoke 'Scavenge' in the weak handle processing unit tests and not 'CollectGarbage' in order to avoid triggering of old space mark sweep in certain situations.
Review URL: https://chromiumcodereview.appspot.com//10748006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9535 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 23:03:07 +00:00
cshapiro@google.com 0928c651e5 Implement a 2-pass heap verification algorithm.
The previous algorithm would visit each pointer in the heap and verify it
without regard for whether the pointer had already been visited.

The new algorithm computes the set of allocated objects and verifies each
object in the set.  In a second pass, each pointer is visited and tested
for membership in the set.

BUG=2606

Review URL: https://chromiumcodereview.appspot.com//10696029

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9532 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 22:07:40 +00:00
nweiz@google.com 5b3f06ec6f Reverting 9527
Review URL: https://chromiumcodereview.appspot.com//10695132

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9531 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 21:59:27 +00:00
regis@google.com e6e70d7bb2 Allocate types in proper heap space.
Allow type finalization without canonicalization.
Review URL: https://chromiumcodereview.appspot.com//10696155

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9529 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 21:54:13 +00:00
nweiz@google.com 2927ef893c Make the Git source install to the system cache.
Review URL: https://chromiumcodereview.appspot.com//10736015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9527 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 21:33:01 +00:00
srdjan@google.com f680c68a55 Cleanup usage of GrowableArrays in class Environment.
Review URL: https://chromiumcodereview.appspot.com//10692140

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9525 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 21:06:52 +00:00
scheglov@google.com f9339df1eb Issue 4040. Fix NPE when report problem with no node.
http://code.google.com/p/dart/issues/detail?id=4040

Clean up after previous quick build fixes.

Can not reproduce actual rename problem, but it may be caused by exception during parsing which this CL is fixing.

R=brianwilkerson@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//10700146

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9522 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 20:28:06 +00:00
srdjan@google.com b4e299e2c1 Improve code for checked instance calls (polymorphic calls) and expand printing of PolymorphicInstanceCall to include checked class names.
Review URL: https://chromiumcodereview.appspot.com//10698128

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9520 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 18:22:45 +00:00
nweiz@google.com a818022964 Refactor Source to take the system cache as a parameter.
Review URL: https://chromiumcodereview.appspot.com//10749014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9519 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 18:14:05 +00:00
scheglov@google.com 5d73fe4cf3 Attempt to fix build
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9514 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 16:15:49 +00:00
scheglov@google.com 69435a374d Issue 2622. Fix for SourceInfo for DartUnit for one case of invalid source
http://code.google.com/p/dart/issues/detail?id=2622

R=messick@google.com,brianwilkerson@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//10702119

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9513 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 16:02:01 +00:00
antonm@google.com b462d8dbd4 Support timers in DOM isolates.
R=podivilov@chromium.org
BUG=4013

Review URL: https://chromiumcodereview.appspot.com//10756006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9511 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-10 15:06:13 +00:00