Commit Graph

544 Commits

Author SHA1 Message Date
Hannes Wallnöfer
d22bf99ead 8026693: getType() called on DISCARD node
Reviewed-by: sundar, lagergren
2013-10-16 10:15:55 +02:00
Hannes Wallnöfer
d41ff60568 8026692: eval() throws NullPointerException with --compile-only
Reviewed-by: sundar, lagergren
2013-10-16 10:12:22 +02:00
James Laskey
4ea77e0979 8026498: Revert: latest runsunspider.js tests contains several bugs
Reviewed-by: sundar, hannesw
2013-10-15 13:14:04 -03:00
Hannes Wallnöfer
fd29d64bfd 8026367: Add a sync keyword to mozilla_compat
Reviewed-by: sundar, attila, lagergren
2013-10-15 17:37:47 +02:00
Hannes Wallnöfer
3c50f75173 8026016: too many relinks dominate avatar.js http benchmark
Reviewed-by: sundar, jlaskey, attila
2013-10-14 11:45:15 +02:00
James Laskey
e0df3515ce 8026309: latest runsunspider.js tests contains several bugs
Reviewed-by: sundar, lagergren
2013-10-11 14:54:16 +02:00
Athijegannathan Sundararajan
76d698bbf8 8026317: $ in the function name results in wrong function being invoked
Reviewed-by: lagergren, jlaskey
2013-10-11 14:11:14 +02:00
Athijegannathan Sundararajan
a71c4a5390 8026302: source representation of getter and setter methods is wrong
Reviewed-by: lagergren, hannesw, jlaskey
2013-10-11 11:15:59 +02:00
Hannes Wallnöfer
02625b48e3 8026292: Megamorphic setter fails with boolean value
Reviewed-by: jlaskey, sundar
2013-10-11 10:56:08 +02:00
Athijegannathan Sundararajan
36d36b2eda 8026263: [NASHORN] Test test/script/basic/JDK-8025488.js fails in nightly builds
Reviewed-by: jlaskey
2013-10-11 06:50:06 +02:00
Athijegannathan Sundararajan
66bb0d28fa 8026264: Getter, setter function name mangling issues
Reviewed-by: lagergren, jlaskey
2013-10-10 21:43:35 +02:00
Athijegannathan Sundararajan
a577bf4154 8026162: "this" in SAM adapter functions is wrong
Reviewed-by: jlaskey, hannesw
2013-10-10 14:43:22 +02:00
Athijegannathan Sundararajan
8cf4738031 8026248: importClass has to be a varargs function
Reviewed-by: jlaskey, hannesw
2013-10-10 13:17:57 +02:00
Athijegannathan Sundararajan
d5dda0a437 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases
Reviewed-by: lagergren, jlaskey
2013-10-10 11:48:56 +02:00
Marcus Lagergren
16ce875fc6 8026137: Fix Issues with Binary Evaluation Order
Co-authored-by: Attila Szegedi <attila.szegedi@oracle.com>
Reviewed-by: hannesw, jlaskey
2013-10-09 17:53:22 +02:00
Hannes Wallnöfer
3ef5f027ce 8026008: Constant folding removes var statement
Reviewed-by: sundar, jlaskey
2013-10-09 14:50:39 +02:00
Athijegannathan Sundararajan
a7261c57e0 8026125: Array.prototype.slice.call(Java.type("java.util.HashMap")) throws ClassCastException: jdk.internal.dynalink.beans.StaticClass cannot be cast to jdk.nashorn.internal.runtime.ScriptObject
Reviewed-by: hannesw, jlaskey
2013-10-09 13:26:23 +02:00
Athijegannathan Sundararajan
1ed2372816 8026112: Function("with(x ? 1e81 : (x2.constructor = 0.1)){}") throws AssertionError: double is not compatible with object
Reviewed-by: lagergren, hannesw
2013-10-09 10:47:47 +02:00
Athijegannathan Sundararajan
c257318ccc 8026048: Function constructor should convert arguments to String before performing any syntax checks
Reviewed-by: jlaskey, hannesw
2013-10-08 16:46:03 +02:00
Hannes Wallnöfer
90e3c6f95e 8026042: FoldConstants need to guard against ArrayLiteralNode
Reviewed-by: jlaskey, sundar
2013-10-08 15:53:22 +02:00
Athijegannathan Sundararajan
21a8fda433 8026039: future strict names are allowed as function name and argument name of a strict function
Reviewed-by: hannesw, jlaskey
2013-10-08 14:57:31 +02:00
Athijegannathan Sundararajan
d77e1a1701 8026033: Switch should load expression even when there are no cases in it
Reviewed-by: jlaskey, hannesw
2013-10-08 13:02:39 +02:00
Hannes Wallnöfer
3d45463461 8025213: Assignment marks variable as defined too early
Reviewed-by: jlaskey, lagergren, sundar
2013-10-08 11:55:19 +02:00
Athijegannathan Sundararajan
be135d2901 8025771: Enhance Nashorn Contexts
Reviewed-by: jlaskey, hannesw
2013-10-04 16:21:29 +05:30
Athijegannathan Sundararajan
04d4458ef8 8025488: Error.captureStackTrace should not format error stack
Reviewed-by: hannesw, attila
2013-10-01 14:38:56 +05:30
Athijegannathan Sundararajan
5c16d54797 8025629: load function should support a way to load scripts from classpath
Reviewed-by: lagergren, hannesw, attila
2013-09-30 21:33:38 +05:30
Hannes Wallnöfer
c9fc9b4c9c 8025589: Array.prototype.shift should only copy defined elements in generic mode
Reviewed-by: sundar, attila
2013-09-30 15:54:05 +02:00
Hannes Wallnöfer
bf815f12fa 8025520: Array.prototype.slice should only copy defined elements
Reviewed-by: sundar, lagergren
2013-09-27 17:00:37 +02:00
Hannes Wallnöfer
1240bd8a48 8025515: Performance issues with Source.getLine()
Reviewed-by: sundar, lagergren
2013-09-27 16:59:01 +02:00
Hannes Wallnöfer
2e8063226d 8025486: RegExp constructor arguments are not evaluated in right order
Reviewed-by: sundar
2013-09-26 11:47:24 +02:00
Hannes Wallnöfer
abc7352b43 8025197: String replace method fails with regexp /$/gi
Reviewed-by: sundar
2013-09-26 10:14:24 +02:00
Hannes Wallnöfer
0414dcb01d 8025434: RegExp lastIndex can exceed int range
Reviewed-by: lagergren, sundar
2013-09-25 16:37:56 +02:00
Athijegannathan Sundararajan
f8d5db06b9 8025325: parseFloat does not handle '.' in exponent part
Reviewed-by: hannesw
2013-09-25 08:17:37 +05:30
Athijegannathan Sundararajan
93c8cbec9c 8025312: parseInt should convert 'radix' argument to ToInt32 even if empty string is parsed
Reviewed-by: jlaskey, hannesw
2013-09-24 20:43:42 +05:30
Hannes Wallnöfer
1508b37a51 8025163: Date methods should not return -0
Reviewed-by: lagergren, jlaskey
2013-09-21 10:11:15 +02:00
Athijegannathan Sundararajan
e259f89913 8025149: JSON.stringify does not handle 'space' argument as per the spec
Reviewed-by: jlaskey, hannesw
2013-09-20 22:37:08 +05:30
Athijegannathan Sundararajan
f996a92b3b 8025147: Trailing comma is not allowed in JSONArray and JSONObject
Reviewed-by: hannesw, jlaskey
2013-09-20 20:55:43 +05:30
Athijegannathan Sundararajan
337cfe593f 8025111: undefined or null 'with' expression in empty with block should throw TypeError
Reviewed-by: lagergren, hannesw
2013-09-20 12:56:07 +05:30
Athijegannathan Sundararajan
996bf0feef 8025090: 'while' statement with 'test' using var before being declared in body results in VerifyError
Reviewed-by: jlaskey
2013-09-19 23:48:37 +05:30
Athijegannathan Sundararajan
d6f64ae009 8025080: Object literal getter, setter function with number format property name results in ClassFormatError
Reviewed-by: lagergren, hannesw
2013-09-19 21:20:47 +05:30
Athijegannathan Sundararajan
c2859f0bca 8025048: true as case label results in ClassCastException
Reviewed-by: lagergren
2013-09-19 13:34:01 +05:30
Athijegannathan Sundararajan
8f90571322 8024973: Using a different ScriptContext with a CompiledScript results in ScriptException
Reviewed-by: jlaskey, hannesw
2013-09-18 16:36:25 +05:30
Athijegannathan Sundararajan
e287ff4ec9 8024972: for (LeftHandSideExpression in Expression) crashes the compiler
Reviewed-by: lagergren, hannesw
2013-09-18 13:06:17 +05:30
Attila Szegedi
5ddc447fc5 8024846: keep separate internal arguments variable
Reviewed-by: lagergren, sundar
2013-09-16 14:44:20 +02:00
Athijegannathan Sundararajan
aea57c9e6f 8024847: Java.to should accept mirror and external JSObjects as array-like objects as well
Reviewed-by: hannesw, attila, lagergren
2013-09-16 15:08:36 +05:30
Athijegannathan Sundararajan
8c226a6210 8024619: JDBC java.sql.DriverManager is not usable from JS script
Reviewed-by: jlaskey, lagergren, attila
2013-09-13 16:45:11 +05:30
Athijegannathan Sundararajan
a122ebe169 8024693: Various minor issues with JSONWriter used by script parser API
Reviewed-by: jlaskey, hannesw
2013-09-12 22:16:40 +05:30
Hannes Wallnöfer
58b4892936 8024512: Regex /[^\[]/ doesn't match
Reviewed-by: jlaskey, sundar
2013-09-12 17:13:59 +02:00
Athijegannathan Sundararajan
0b67400c6f 8024180: Incorrect handling of expression and parent scope in 'with' statements
Reviewed-by: jlaskey, hannesw
2013-09-09 20:10:41 +05:30
Athijegannathan Sundararajan
6311d28032 8024255: When a keyword is used as object property name, the property can not be deleted
Reviewed-by: jlaskey, lagergren
2013-09-05 21:17:06 +05:30
Athijegannathan Sundararajan
747b74ce5e 8024174: Setting __proto__ property in Object literal should be supported
Reviewed-by: jlaskey, lagergren
2013-09-04 19:58:16 +05:30
Athijegannathan Sundararajan
1268ef5430 8024120: Setting __proto__ to null removes the __proto__ property
Reviewed-by: lagergren, attila
2013-09-04 14:29:07 +05:30
Athijegannathan Sundararajan
f5d9acd819 8023784: Object.prototype.toString should contain the class name for all instances
Reviewed-by: lagergren, jlaskey
2013-08-27 18:57:50 +05:30
Attila Szegedi
a9796aeea0 8023780: Gracefully handle @CS methods while binding bean properties
Reviewed-by: jlaskey, lagergren, sundar
2013-08-27 13:17:00 +02:00
Hannes Wallnöfer
c10f9ffaeb 8023650: Regexp m flag does not recognize CRNL or CR
Reviewed-by: jlaskey, lagergren
2013-08-26 15:59:41 +02:00
James Laskey
0863203de8 8019987: String trimRight and trimLeft could be defined
Reviewed-by: sundar
2013-08-23 12:20:19 -03:00
Attila Szegedi
3a14dde3d2 8023630: Implement Java.super() as the preferred way to call super methods
Reviewed-by: jlaskey, lagergren, sundar
2013-08-23 13:10:45 +02:00
Hannes Wallnöfer
863bbb911b 8023531: new RegExp('').toString() should return '/(?:)/'
Reviewed-by: sundar, jlaskey
2013-08-22 17:23:50 +02:00
Athijegannathan Sundararajan
cc6216ae2e 8023551: Mirror functions can not be invoked using invokeMethod, invokeFunction
Reviewed-by: attila, jlaskey, lagergren
2013-08-22 18:46:26 +05:30
Athijegannathan Sundararajan
2bb4ab07ca 8023368: Instance __proto__ property should exist and be writable
Reviewed-by: attila, hannesw
2013-08-21 17:28:53 +05:30
Attila Szegedi
00099d7de2 8022903: Enhance for-in and for-each for Lists and Maps
Reviewed-by: lagergren, sundar
2013-08-21 13:39:40 +02:00
Attila Szegedi
6db516232b 8023373: allow super invocation for adapters
Reviewed-by: lagergren, sundar
2013-08-21 13:39:09 +02:00
Hannes Wallnöfer
c5193485ad 8019985: Date.parse("2000-01-01T00:00:00.Z") should return NaN
Reviewed-by: sundar, jlaskey
2013-08-16 13:42:44 +02:00
Athijegannathan Sundararajan
2f90b28014 8020355: bind on built-in constructors don't use bound argument values
Reviewed-by: lagergren, hannesw
2013-08-16 15:04:36 +05:30
Athijegannathan Sundararajan
a28b8a61dc 8023026: Array.prototype iterator functions like forEach, reduce should work for Java arrays, lists
Reviewed-by: jlaskey, lagergren
2013-08-14 20:51:53 +05:30
Athijegannathan Sundararajan
7e85e9c196 8022598: Object.getPrototypeOf should return null for host objects rather than throwing TypeError
Reviewed-by: lagergren, jlaskey, attila, hannesw
2013-08-12 18:16:28 +05:30
Hannes Wallnöfer
76e9329e16 8022731: NativeArguments has wrong implementation of isMapped()
Reviewed-by: lagergren, jlaskey
2013-08-12 13:31:43 +02:00
Athijegannathan Sundararajan
77e477eaea 8022524: Memory leaks in nashorn sources and tests found by jhat analysis
Reviewed-by: attila, hannesw
2013-08-08 16:38:32 +05:30
Hannes Wallnöfer
24adb234a8 8020132: Big object literal with numerical keys exceeds method size
Reviewed-by: lagergren, sundar
2013-08-01 12:23:38 +02:00
Michael Horowitz
716045c405 8021321: Two runsunspider tests fail after updating sunspider to 1.0
Reviewed-by: jlaskey, sundar
2013-07-26 09:17:54 -03:00
Hannes Wallnöfer
77a2559593 8020719: Run tests with reduced splitter threshold
Reviewed-by: lagergren, sundar, jlaskey
2013-07-26 13:50:52 +02:00
Athijegannathan Sundararajan
67126cb8fb 8021262: Make nashorn access checks consistent with underlying dynalink
Reviewed-by: jlaskey, lagergren, attila
2013-07-24 20:28:03 +05:30
Attila Szegedi
85d68499be 8021246: Fix regression for 8021189
Reviewed-by: lagergren, sundar
2013-07-24 12:48:09 +02:00
Attila Szegedi
91e5fbd2e0 8021189: Prevent access to constructors of restricted classes
Reviewed-by: lagergren, sundar
2013-07-24 11:13:24 +02:00
Attila Szegedi
947610257d 8021129: Use public lookup again
Reviewed-by: lagergren, sundar
2013-07-23 18:28:58 +02:00
Athijegannathan Sundararajan
e2975f94c6 8021122: Not all callables are handled for toString and other function valued properties
Reviewed-by: attila, hannesw, jlaskey
2013-07-23 18:17:25 +05:30
Attila Szegedi
566991e98e 8020820: Limit access to static members of reflective classes
Reviewed-by: jlaskey, sundar
2013-07-18 16:47:45 +02:00
Attila Szegedi
3a0f1e0653 8020809: Java adapter should not allow overriding of caller sensitive methods
Reviewed-by: jlaskey, sundar
2013-07-18 16:22:25 +02:00
Hannes Wallnöfer
c4bea48ac1 8020356: ClassCastException Undefined->Scope on spiltter class generated for a large switch statement
Reviewed-by: jlaskey, attila
2013-07-17 18:20:40 +02:00
Attila Szegedi
f6a5b67f14 8015356: array concatenation should skip empty elements
Reviewed-by: jlaskey, sundar
2013-07-16 17:03:30 +02:00
Attila Szegedi
e85e4fb319 8020357: throw RangeError for too large NativeArrayBuffer size
Reviewed-by: jlaskey, hannesw, sundar
2013-07-16 15:28:33 +02:00
Hannes Wallnöfer
6055fea677 8020358: Array(0xfffffff) throws OutOfMemoryError
Reviewed-by: jlaskey, sundar
2013-07-15 18:32:23 +02:00
Attila Szegedi
84e8d48fb4 8020508: Enforce reflection access restrictions on Object.bindProperties
Reviewed-by: jlaskey, sundar
2013-07-15 16:31:49 +02:00
Hannes Wallnöfer
40b8f5d48c 8020354: Object literal property initialization is not done in source order
Reviewed-by: sundar, jlaskey
2013-07-15 15:51:06 +02:00
Attila Szegedi
e11a9b1d07 8020324: Implement Object.bindProperties(target, source) for beans
Reviewed-by: hannesw, sundar
2013-07-15 12:33:48 +02:00
Athijegannathan Sundararajan
b8081def9f 8020463: Input argument array wrapping in loadWithNewGlobal is wrong
Reviewed-by: attila, jlaskey
2013-07-12 20:06:41 +05:30
Attila Szegedi
533439278e 8019822: Duplicate name and signature in finally block
Reviewed-by: jlaskey, sundar
2013-07-12 11:58:42 +02:00
Athijegannathan Sundararajan
eaed291ba6 8020223: ClassCastException: String can not be casted to ScriptFunction
Reviewed-by: attila, lagergren
2013-07-12 15:27:16 +05:30
Athijegannathan Sundararajan
4972fea316 8020437: Wrong handling of line numbers with multiline string literals
Reviewed-by: attila, lagergren
2013-07-12 15:01:33 +05:30
Athijegannathan Sundararajan
380db28df8 8012191: noSuchProperty can't cope with vararg functions
Reviewed-by: jlaskey, attila
2013-07-11 22:58:37 +05:30
Attila Szegedi
4eb5c9e3a4 8013925: Remove symbol fields from nodes that don't need them
Reviewed-by: jlaskey, lagergren
2013-07-11 18:33:33 +02:00
Athijegannathan Sundararajan
80f5124f23 8020380: __noSuchProperty__ defined in mozilla_compat.js script should be non-enumerable
Reviewed-by: jlaskey, hannesw, attila
2013-07-11 18:23:13 +05:30
Athijegannathan Sundararajan
f0144d9d93 8020325: static property does not work on accessible, public classes
Reviewed-by: attila, hannesw, lagergren
2013-07-11 16:34:55 +05:30
Hannes Wallnöfer
652b020905 8016681: regex capture behaves differently than on V8
Reviewed-by: lagergren, sundar
2013-07-10 10:54:19 +02:00
Marcus Lagergren
cfbe70e223 8020124: In the case of an eval switch, we might need explicit conversions of the tag store, as it was not known in the surrounding environment
Reviewed-by: sundar, jlaskey
2013-07-09 15:56:59 +02:00
Athijegannathan Sundararajan
8854b24a30 8014785: Ability to extend global instance by binding properties of another object
Reviewed-by: attila, hannesw, jlaskey, lagergren
2013-07-09 17:37:46 +05:30
Attila Szegedi
3e0c71b6c1 8009758: reactivate the 8006529 test
Reviewed-by: jlaskey, sundar
2013-07-09 13:57:24 +02:00
Hannes Wallnöfer
4e011cfb8c 8019963: empty char range in regex
Reviewed-by: jlaskey, sundar
2013-07-08 19:34:55 +02:00
Marcus Lagergren
fa6c5ef45f 8019983: Void returns combined with return with expression picked the wrong return type
Reviewed-by: sundar, jlaskey
2013-07-05 19:35:39 +02:00
Attila Szegedi
dbe76b28bd 8019819: scope symbol didn't get a slot in certain cases
Reviewed-by: hannesw, jlaskey, lagergren, sundar
2013-07-05 15:10:47 +02:00
Hannes Wallnöfer
8f092c733a 8017084: Use spill properties for large object literals
Reviewed-by: lagergren, sundar
2013-07-05 14:36:54 +02:00
Athijegannathan Sundararajan
1853f28ab3 8019947: inherited property invalidation does not work with two globals in same context
Reviewed-by: jlaskey, lagergren, hannesw, attila
2013-07-05 14:38:04 +05:30
Marcus Lagergren
7426b8de5c Merge 2013-07-04 17:28:04 +02:00
Marcus Lagergren
0807ef3638 8019821: allInteger switches were confused by boolean cases, as they are a narrower type than int
Reviewed-by: sundar, hannesw
2013-07-04 17:27:33 +02:00
Attila Szegedi
f495ca639c 8019809: return after break incorrectly sets the block as terminal
Reviewed-by: jlaskey, lagergren
2013-07-04 14:10:18 +02:00
Attila Szegedi
75501c6993 8017768: allow dot as inner class name separator for Java.type
Reviewed-by: jlaskey, sundar
2013-07-03 18:10:12 +02:00
Athijegannathan Sundararajan
1e6e9dc0c6 8019814: Add regression test for passing cases
Reviewed-by: jlaskey, lagergren
2013-07-03 19:20:29 +05:30
Marcus Lagergren
047d1b732f 8019811: Static calls - self referential functions needed a return type conversion if they were specialized, as they can't use the same mechanism as indy calls
Reviewed-by: sundar, jlaskey
2013-07-03 15:46:03 +02:00
Athijegannathan Sundararajan
72a7034a41 8019805: for each (init; test; modify) is invalid
Reviewed-by: lagergren, jlaskey
2013-07-03 17:26:31 +05:30
Marcus Lagergren
62fb002570 8019585: Sometimes a var declaration using itself in its init wasn't declared as canBeUndefined, causing erroneous bytecode
Reviewed-by: sundar, attila
2013-07-03 13:03:36 +02:00
Attila Szegedi
92bcfea39a 8010946: AccessControl.doPrivileged is broken when called from js script
Reviewed-by: jlaskey, sundar
2013-07-03 12:39:28 +02:00
Athijegannathan Sundararajan
6dfb638284 8019791: ~ is a unary operator
Reviewed-by: hannesw
2013-07-03 14:08:00 +05:30
Athijegannathan Sundararajan
5ccee02c35 8019783: typeof does not work properly for java methods and foreign objects
Reviewed-by: hannesw
2013-07-03 13:13:17 +05:30
Athijegannathan Sundararajan
22b6014ba6 8019629: void operator should always evaluate to undefined
Reviewed-by: jlaskey
2013-07-03 00:08:45 +05:30
Marcus Lagergren
53a84f9d41 Merge 2013-07-02 15:01:38 +02:00
Marcus Lagergren
8ff9291b05 8017082: Long array literals were slightly broken
Reviewed-by: sundar, attila
2013-07-02 14:50:39 +02:00
Athijegannathan Sundararajan
f05a001210 8019553: NPE on illegal l-value for increment and decrement
Reviewed-by: jlaskey, attila, lagergren
2013-07-02 18:00:15 +05:30
Marcus Lagergren
518a9bf3d0 8016667: Wrong bytecode when testing/setting due to null check shortcut checking against primitive too
Reviewed-by: jlaskey, sundar
2013-07-02 13:50:19 +02:00
Athijegannathan Sundararajan
f743fb3852 8019508: Comma handling in object literal parsing is wrong
Reviewed-by: hannesw
2013-07-01 23:36:40 +05:30
Athijegannathan Sundararajan
c6b0514112 8019488: switch on literals result in NoSuchMethodError or VerifyError
Reviewed-by: hannesw
2013-07-01 19:52:07 +05:30
Athijegannathan Sundararajan
135ccaceef 8019482: Number("0x0.0p0") should evaluate to NaN
Reviewed-by: lagergren
2013-07-01 17:21:09 +05:30
Athijegannathan Sundararajan
1a074a8b66 8019478: Object.prototype.toString.call(/a/.exec("a")) === "[object Array]" should be true
Reviewed-by: hannesw
2013-07-01 14:15:07 +05:30
Athijegannathan Sundararajan
1a0fc187f4 8019473: Parser issues related to functions and blocks
Reviewed-by: lagergren
2013-07-01 12:38:01 +05:30
Athijegannathan Sundararajan
0eb7f23c99 8019365: Error stack format
Reviewed-by: hannesw
2013-06-28 19:36:26 +05:30
Athijegannathan Sundararajan
a089899deb 8019226: line number not generated for first statement if it is on the same function declaration line
Reviewed-by: jlaskey, hannesw
2013-06-27 13:24:50 +05:30
Athijegannathan Sundararajan
ee8b3bd823 8014781: support Error.captureStackTrace
Reviewed-by: jlaskey, hannesw
2013-06-26 19:42:17 +05:30
Athijegannathan Sundararajan
f4695eca85 8017950: error.stack should be a string rather than an array
Reviewed-by: hannesw, jlaskey
2013-06-26 16:36:13 +05:30
Athijegannathan Sundararajan
249d0ae5b4 8015969: Needs to enforce and document that global "context" and "engine" can't be modified when running via jsr223
Reviewed-by: hannesw, jlaskey
2013-06-25 17:31:19 +05:30
Athijegannathan Sundararajan
02e0b5c3f1 8015959: Can't call foreign constructor
Reviewed-by: jlaskey, hannesw
2013-06-24 19:06:01 +05:30
James Laskey
2aad633d9b 8017448: JDK-8010732.js.EXPECTED truncated
Reviewed-by: sundar
2013-06-22 10:12:19 -03:00
James Laskey
86ff93e544 8010732: BigDecimal, BigInteger and Long handling in nashorn
Reviewed-by: sundar
2013-06-21 14:34:00 -03:00
Athijegannathan Sundararajan
9e05183200 8017046: Cannot assign undefined to a function argument if the function uses arguments object
Reviewed-by: hannesw
2013-06-20 13:45:38 +05:30
Athijegannathan Sundararajan
1d927dd28e 8015347: Parsing issue with decodeURIComponent
Reviewed-by: jlaskey, hannesw
2013-06-19 21:07:59 +05:30
James Laskey
d643a2fcd7 8010697: DeletedArrayFilter seems to leak memory
Reviewed-by: hannesw, sundar
2013-06-19 09:10:49 -03:00
Athijegannathan Sundararajan
135319a5f0 8016550: nashorn.option.no.syntax.extensions has the wrong default
Reviewed-by: hannesw, lagergren
2013-06-17 13:56:05 +05:30
Athijegannathan Sundararajan
835f3c4de0 8016618: script mirror object access should be improved
Reviewed-by: jlaskey, lagergren
2013-06-14 21:16:14 +05:30
Marcus Lagergren
f74c3ecd82 8016235: Use in catch block that may not have been executed in try block caused illegal byte code to be generated
Reviewed-by: jlaskey, hannesw
2013-06-14 13:53:40 +02:00
Hannes Wallnöfer
2904cada12 8016542: String.prototype.replace called with function argument should not replace $ patterns
Reviewed-by: lagergren, jlaskey
2013-06-13 20:50:24 +02:00
Hannes Wallnöfer
f2751c93e8 8016528: Hex code from escape() should be padded
Reviewed-by: jlaskey, lagergren
2013-06-13 15:26:49 +02:00
Hannes Wallnöfer
bd1ee81a66 8016522: Numeric literal must not be followed by IdentifierStart
Reviewed-by: lagergren, sundar
2013-06-13 14:02:43 +02:00
Hannes Wallnöfer
96b4d172c0 8016518: Parsing of octal string escapes is broken
Reviewed-by: sundar, lagergren
2013-06-13 12:52:09 +02:00
Athijegannathan Sundararajan
6a09a3934e 8015355: Array.prototype functions don't honour non-writable length and / or index properties
Reviewed-by: lagergren, hannesw
2013-06-13 16:08:35 +05:30
Hannes Wallnöfer
0f3e8001de 8011893: JS Object builtin prototype is not thread safe
Reviewed-by: sundar, jlaskey
2013-06-12 16:41:38 +02:00
Athijegannathan Sundararajan
83aedc7fdd 8015357: a = []; a[0x7fffffff]=1; a.sort()[0] should evaluate to 1 instead of undefined
Reviewed-by: hannesw, lagergren
2013-06-11 13:09:43 +05:30
Athijegannathan Sundararajan
be9816a81e 8016239: loadWithNewGlobal should support user supplied arguments from the caller
Reviewed-by: lagergren, attila, jlaskey
2013-06-10 19:54:07 +05:30
Marcus Lagergren
2d2e7fe029 8016226: backing out test without third party license approval
Reviewed-by: attila, sundar
2013-06-10 13:27:07 +02:00
Marcus Lagergren
ce8819512f 8015892: canBeUndefined too conservative for some use before declaration cases
Reviewed-by: attila, hannesw
2013-06-10 13:21:29 +02:00
Hannes Wallnöfer
2bc5557936 8012291: NativeArray is inconsistent in using long for length and index in some places and int for the same in other places
Reviewed-by: lagergren, jlaskey
2013-06-07 17:44:25 +02:00
Athijegannathan Sundararajan
769aac6d4a 8015346: JSON parsing issues with escaped strings, octal, decimal numbers
Reviewed-by: hannesw, jlaskey
2013-06-06 21:41:20 +05:30
Hannes Wallnöfer
008916124b 8015350: Array.prototype.reduceRight issue with large length and index
Reviewed-by: attila, sundar, lagergren
2013-06-05 12:44:24 +02:00
Athijegannathan Sundararajan
1e63ac571c 8015945: loadWithNewGlobal return value has to be properly wrapped
Reviewed-by: lagergren, hannesw
2013-06-05 12:08:49 +05:30
Athijegannathan Sundararajan
7ee2adb4d7 8015830: Javascript mapping of ScriptEngine bindings does not expose keys
Reviewed-by: jlaskey, lagergren
2013-06-04 22:31:48 +05:30
Athijegannathan Sundararajan
5817f439ab 8015855: test/script/basic/JDK-8012164.js fails on Windows
Reviewed-by: hannesw, lagergren, jlaskey
2013-06-04 17:33:14 +05:30
James Laskey
b7ee1a873e 8015741: Need a global.load function that starts with a new global scope
Reviewed-by: sundar, lagergren
2013-06-03 08:34:29 -03:00
Athijegannathan Sundararajan
49c5af63c9 8015345: Function("}),print('test'),({") should throw SyntaxError
Reviewed-by: lagergren, hannesw, jlaskey
2013-06-03 15:58:14 +05:30
Athijegannathan Sundararajan
a48b38238f 8012164: Error.stack needs trimming
Reviewed-by: lagergren, jlaskey
2013-05-31 17:39:12 +05:30
Athijegannathan Sundararajan
91a299799e 8015353: Date.parse illegal string parsing issues
Reviewed-by: jlaskey, lagergren
2013-05-30 16:49:46 +05:30
James Laskey
a3f6ca8aed 8015636: Add more typed arrays code coverage tests
Reviewed-by: sundar
2013-05-29 16:23:50 -03:00
Athijegannathan Sundararajan
4e5a976adf 8015349: "abc".lastIndexOf("a",-1) should evaluate to 0 and not -1
Reviewed-by: lagergren, attila, jlaskey
2013-05-29 21:27:10 +05:30
Marcus Lagergren
14cc2ba534 8011023: Math round didn't conform to ECMAScript 5 spec
Reviewed-by: jlaskey, attila
2013-05-29 14:08:00 +02:00
Marcus Lagergren
d1cfaae2c6 8015447: Octane harness fixes for rhino and entire test runs: ant octane, ant octane-v8, ant octane-rhino
Reviewed-by: sundar, jlaskey
2013-05-27 17:57:07 +02:00
Athijegannathan Sundararajan
bca9af88da 8015352: "i".toUpperCase() => currently returns "İ", but should be "I" (with Turkish locale)
Reviewed-by: jlaskey, lagergren
2013-05-27 20:41:34 +05:30
Marcus Lagergren
1dfb4bf18e Merge 2013-05-27 13:12:11 +02:00
Marcus Lagergren
a34fd412c5 8014219: Make the run-octane harness more deterministic by not measuring elapsed time every iteration. Also got rid of most of the run logic in base.js and call benchmarks directly for the same purpose
Reviewed-by: jlaskey, attila
2013-05-27 13:11:13 +02:00
Hannes Wallnöfer
6e76fe0cf2 8015348: RegExp("[") results in StackOverflowError
Reviewed-by: sundar, attila
2013-05-27 12:26:39 +02:00
Athijegannathan Sundararajan
f86162c90c 8015354: JSON.parse should not use [[Put]] but use [[DefineOwnProperty]] instead
Reviewed-by: lagergren, hannesw
2013-05-24 18:39:25 +05:30
Marcus Lagergren
f9d1d0f538 8012083: Array literal constant folding issue
Reviewed-by: attila, jlaskey
2013-05-23 13:10:58 +02:00
Attila Szegedi
dd837d94dd 8015267: Allow conversion of JS arrays to Java List/Deque
Reviewed-by: lagergren, sundar
2013-05-23 12:01:35 +02:00
Hannes Wallnöfer
aab1e4573c 8010804: Review long and integer usage conventions
Reviewed-by: jlaskey, sundar
2013-05-22 16:43:48 +02:00
Athijegannathan Sundararajan
2cd9f2dde4 8014735: Typed Array, BYTES_PER_ELEMENT should be a class property
Reviewed-by: lagergren, jlaskey
2013-05-22 19:33:08 +05:30
Attila Szegedi
1a3b9278eb 8014953: Have NativeJavaPackage throw a ClassNotFoundException when invoked
Reviewed-by: jlaskey, sundar
2013-05-21 13:40:12 +02:00
Attila Szegedi
34bc5ff07f 8014797: rename Java.toJavaArray/toJavaScriptArray to Java.to/from, respectively
Reviewed-by: jlaskey, sundar
2013-05-20 21:25:14 +02:00
Marcus Lagergren
cc79bd1237 8006069: Range analysis first iteration, runtime specializations
Reviewed-by: jlaskey, sundar
2013-05-20 16:38:38 +02:00
Konstantin Shefov
e0fcb74c7e 8014823: Reprise - Smoke test fail: Windows JDK-8008554.js - access denied ("java.io.FilePermission" "//C/aurora/sandbox/nashorn~source/test/script/basic/NASHORN-99.js" "read")
Reviewed-by: jlaskey
2013-05-17 16:44:22 -03:00
Marcus Lagergren
aeda283b75 8013919: Original exception no longer thrown away when a finally rethrows
Reviewed-by: jlaskey, sundar
2013-05-16 13:44:25 +02:00
Attila Szegedi
18bdc5fd42 8014647: Allow class-based overrides to be initialized with a ScriptFunction
Reviewed-by: hannesw, jlaskey, sundar
2013-05-15 20:21:59 +02:00
James Laskey
e5be7a02ea 8014648: Exclude testing and infrastructure packages from code coverage, round two
Reviewed-by: sundar
2013-05-15 12:09:38 -03:00
Athijegannathan Sundararajan
8bbf3e9b52 8012305: Function.bind can't be called on prototype function inside constructor
Reviewed-by: lagergren, attila
2013-05-15 19:45:16 +05:30
Marcus Lagergren
41f972c2ed 8014426: Original exception no longer thrown away when a finally rethrows
Reviewed-by: attila, jlaskey
2013-05-14 19:56:35 +02:00
Attila Szegedi
ca08772ec8 8011718: binding already bound function with extra arguments fails
Reviewed-by: jlaskey, sundar
2013-05-14 19:18:17 +02:00
Marcus Lagergren
c668214703 8013914: Removed explicit LineNumberNodes that were too brittle when code moves around, and also introduced unnecessary footprint. Introduced the Statement node and fixed dead code elimination issues that were discovered by the absense of labels for LineNumberNodes
Reviewed-by: jlaskey, attila
2013-05-07 14:43:17 +02:00
Hannes Wallnöfer
5504a220f7 8013874: Function argument's prototype seem cached and wrongly reused
Reviewed-by: jlaskey
2013-05-03 22:50:51 +02:00
Hannes Wallnöfer
253e421ec5 8013873: Regexp regression for escaped dash in character class
Reviewed-by: jlaskey
2013-05-03 22:48:53 +02:00
Hannes Wallnöfer
973d656320 8013878: ClassCastException in Regex
Reviewed-by: jlaskey
2013-05-03 22:47:23 +02:00
Marcus Lagergren
6f6ec2d9d1 8013477: Node.setSymbol needs to be copy on write - enable IR snapshots for recompilation based on callsite type specialization. [not enabled by default, hidden by a flag for now]
Reviewed-by: jlaskey, hannesw
2013-05-03 15:33:54 +02:00
Hannes Wallnöfer
323a923236 8013729: SwitchPoint invalidation not working over prototype chain
Reviewed-by: lagergren, sundar
2013-05-02 09:19:44 +02:00
Marcus Lagergren
a2c222ef34 8013533: Increase code coverage report for types and logging
Reviewed-by: hannesw, sundar
2013-04-30 09:42:13 +02:00
Attila Szegedi
8c132a0300 8008814: Configurable ignore/warning/error behavior for function declaration as statement
Reviewed-by: jlaskey, sundar
2013-04-29 23:22:20 +02:00
Athijegannathan Sundararajan
56129142b0 8013444: JSON.parse does not invoke "reviver" callback as per spec
Reviewed-by: jlaskey, hannesw
2013-04-29 18:40:40 +05:30
Athijegannathan Sundararajan
b165a1a882 8013337: Issues with Date.prototype's get, set functions
Reviewed-by: jlaskey, hannesw, lagergren
2013-04-26 18:31:42 +05:30
Attila Szegedi
08a8593cd6 8013325: function named 'arguments' should set DEFINES_ARGUMENTS flag in its parent, not itself
Reviewed-by: hannesw, sundar
2013-04-26 09:20:37 +02:00
Attila Szegedi
dc20ce76ca 8013167: Vararg constructor not found
Reviewed-by: jlaskey, lagergren, sundar
2013-04-25 15:31:23 +02:00
Hannes Wallnöfer
1ac0e870a1 8013131: Various compatibility issues in String.prototype.split()
Reviewed-by: lagergren, jlaskey
2013-04-25 14:20:23 +02:00
Hannes Wallnöfer
512740c397 8008238: Labeled break in finally causes stack overflow in Node copy
Reviewed-by: lagergren, attila
2013-04-24 13:36:31 +02:00
Hannes Wallnöfer
48b0c0e8f3 8012931: NativeDate.safeToString() throws RangeError for invalid date
Reviewed-by: lagergren, attila
2013-04-24 13:34:22 +02:00
Hannes Wallnöfer
77d7f14b96 8012334: ToUint32, ToInt32, and ToUint16 don't conform to spec
Reviewed-by: lagergren, attila
2013-04-24 13:28:25 +02:00
James Laskey
1334460008 8011578: -Dnashorn.unstable.relink.threshold=1 causes tests to fail
Reviewed-by: sundar, lagergren
2013-04-20 08:54:13 -03:00
Marcus Lagergren
fb7a325141 8010701: Immutable nodes - final iteration
Reviewed-by: sundar, hannesw, jlaskey
2013-04-19 16:11:16 +02:00
Hannes Wallnöfer
4239700710 8012460: RegExp regression
Reviewed-by: jlaskey, sundar
2013-04-18 14:25:45 +02:00
Athijegannathan Sundararajan
649b7e005b 8012462: Date.prototype.toJSON does not handle non-Date 'this' as per the spec
Reviewed-by: jlaskey, hannesw
2013-04-18 15:50:30 +05:30
Athijegannathan Sundararajan
49eb3c0de1 8012457: Function.prototype.apply should accept any array-like argument for function arguments
Reviewed-by: lagergren, jlaskey
2013-04-17 16:52:06 +05:30
Athijegannathan Sundararajan
a4bf4b9be6 8012240: Array.prototype.map.call({length: -1, get 0(){throw 0}}, function(){}).length does not throw error
Reviewed-by: lagergren, jlaskey
2013-04-15 20:12:50 +05:30
Hannes Wallnöfer
0e49b64b83 8011980: Allow NUL character in character class
Reviewed-by: sundar, lagergren
2013-04-11 12:16:39 +02:00
Athijegannathan Sundararajan
9170d68b5a 8011974: Comparator function returning negative and positive Infinity does not work as expected with Array.prototype.sort
Reviewed-by: hannesw, lagergren
2013-04-11 15:04:55 +05:30
Athijegannathan Sundararajan
30fdece570 8011960: [2,1].sort(null) should throw TypeError
Reviewed-by: hannesw, lagergren
2013-04-11 13:20:03 +05:30
Hannes Wallnöfer
ad7e2cd8de 8011756: Wrong characters supported in RegExp \c escape
Reviewed-by: lagergren, attila
2013-04-10 14:08:00 +02:00
Hannes Wallnöfer
3c60983c02 8011749: Bugs with empty character class handling
Reviewed-by: lagergren, attila
2013-04-10 14:05:11 +02:00
Hannes Wallnöfer
ab923e74bf 8011714: Regexp decimal escape handling still not correct
Reviewed-by: lagergren, attila
2013-04-10 14:00:11 +02:00
Hannes Wallnöfer
bc7905ab3a 8009230: Nashorn rejects extended RegExp syntax accepted by all major JS engines
Reviewed-by: jlaskey, lagergren
2013-04-05 19:50:10 +02:00
Attila Szegedi
35f9ab2054 8011555: Invalid class name in with block with JavaImporter causes MH type mismatch
Reviewed-by: jlaskey, lagergren
2013-04-04 18:32:00 +02:00
Athijegannathan Sundararajan
194f867e24 8011552: Arrays with missing elements are not properly sorted
Reviewed-by: jlaskey, lagergren
2013-04-04 20:46:31 +05:30
Attila Szegedi
a6439d2b72 Merge 2013-04-04 15:55:42 +02:00
Attila Szegedi
5a45a7da03 8011544: Allow subclassing Java classes from script without creating instances
Reviewed-by: jlaskey, sundar
2013-04-04 15:53:26 +02:00
Athijegannathan Sundararajan
76f2aa79e6 8011543: "".split(undefined,{valueOf:function(){throw 2}}) does not throw exception
Reviewed-by: lagergren, jlaskey
2013-04-04 18:30:30 +05:30
Athijegannathan Sundararajan
e20dc52ab2 8011421: When using Object.defineProperty on arrays, PropertyDescriptor's property accessors are invoked multiple times
Reviewed-by: lagergren, hannesw
2013-04-04 13:54:51 +05:30
Athijegannathan Sundararajan
2b494aafd9 8011394: RegExp.prototype.test() does not call valueOf on lastIndex property as per the spec
Reviewed-by: lagergren, jlaskey, hannesw
2013-04-04 10:24:46 +05:30
Athijegannathan Sundararajan
84f1ee1581 8011382: Data prototype methods and constructor do not call user defined toISOString, valueOf methods per spec
Reviewed-by: lagergren, jlaskey
2013-04-03 20:17:05 +05:30
Athijegannathan Sundararajan
a85fab2730 8011365: Array.prototype.join and Array.prototype.toString do not throw TypeError on null, undefined
Reviewed-by: attila, hannesw, lagergren
2013-04-03 15:27:28 +05:30
Attila Szegedi
7891ed4115 8011362: Overloaded method resolution foiled by nulls
Reviewed-by: hannesw, sundar
2013-04-03 11:13:08 +02:00
Athijegannathan Sundararajan
d35b6ae5f6 8011357: Array.prototype.slice and Array.prototype.splice should not call user defined valueOf of start, end arguments more than once
Reviewed-by: lagergren, hannesw
2013-04-03 11:41:42 +05:30
Athijegannathan Sundararajan
e96d207c68 8011274: Object.getOwnPropertyDescriptor(function(){"use strict"},"caller").get.hasOwnProperty("prototype") should be false
Reviewed-by: lagergren, jlaskey
2013-04-02 23:01:10 +05:30
Athijegannathan Sundararajan
fcc548f01d 8011237: Object.isExtensible(Object.getOwnPropertyDescriptor(function(){"use strict"},"caller").get) should be false
Reviewed-by: lagergren, jlaskey
2013-04-02 20:42:03 +05:30
Athijegannathan Sundararajan
da76d3b5ec 8011209: Object.getOwnPropertyDescriptor(function(){"use strict"},"caller").get.length is not 0
Reviewed-by: lagergren, hannesw, jlaskey
2013-04-02 17:40:53 +05:30
Marcus Lagergren
fec16029ea 8010995: The bug ID 8010710 accidentally got two digits transposed in the checkin and unit test name
Reviewed-by: hannesw, sundar
2013-03-29 08:55:05 +01:00
Athijegannathan Sundararajan
bf6e4f1ec7 8010924: Dealing with undefined property gets you a fatal stack
Reviewed-by: lagergren, jlaskey
2013-03-28 20:48:25 +05:30
Athijegannathan Sundararajan
97d7f98a21 8010720: Linkage problem with java.lang.String.length()
Reviewed-by: hannesw, lagergren
2013-03-26 18:26:19 +05:30
Athijegannathan Sundararajan
a9423b7ebf 8010709: org on the top level doesn't resolve
Reviewed-by: lagergren, hannesw
2013-03-25 18:20:16 +05:30
Marcus Lagergren
897aab045e 8017010: index evaluation to a temporary location for index operator much change temporaries to slots, but never scoped vars
Reviewed-by: hannesw, sundar
2013-03-25 12:01:06 +01:00
Attila Szegedi
7188961426 8010652: Eliminate non-child references in Block/FunctionNode, and make few node types immutable
Reviewed-by: jlaskey, lagergren
2013-03-23 00:58:39 +01:00
Athijegannathan Sundararajan
c846064c8f 8010199: javax.script.Invocable implementation for nashorn does not return null when matching functions are missing
Reviewed-by: lagergren, jlaskey
2013-03-18 21:03:11 +05:30
Marcus Lagergren
e05970ca52 8010147: Forgot to add EXPECTED files for lazy and eager sunspider test
Reviewed-by: sundar, jlaskey
2013-03-15 16:07:13 +01:00
Marcus Lagergren
2aeaf10fff 8009982: Lazy execution bugfix. Added lazy sunspider unit test. Added mandreel to compile-octane test. Fixed warnings
Reviewed-by: sundar, jlaskey
2013-03-14 14:49:55 +01:00
Athijegannathan Sundararajan
d671cda73c 8009868: For loop with "true" as condition results in AssertionError in codegen
Reviewed-by: jlaskey, hannesw, lagergren
2013-03-12 21:17:47 +05:30
Marcus Lagergren
1af08ef100 8009718: Lazy execution architecture continued - ScriptFunctionData is either final or recompilable. Moved ScriptFunctionData creation logic away from runtime to compile time. Prepared for method generation/specialization. Got rid of ScriptFunctionImplTrampoline whose semantics could be done as part of the relinking anyway. Merge with the lookup package change
Reviewed-by: attila, jlaskey
2013-03-12 15:30:53 +01:00
Athijegannathan Sundararajan
bb6c34adc7 8009757: Package access clean up and refactoring
Reviewed-by: jlaskey, lagergren, attila
2013-03-12 18:12:42 +05:30
Athijegannathan Sundararajan
d9cd2f6ad3 8009559: clean up method handle lookup code
Reviewed-by: ahgross, jlaskey, attila, sundar
2013-03-09 21:49:32 +05:30
Athijegannathan Sundararajan
4f3800def1 8009553: Object.create(Array.prototype) doesn't respect reset length
Reviewed-by: jlaskey, lagergren
2013-03-06 22:38:18 +05:30
Hannes Wallnöfer
242e864599 8008370: coffee script compiler doesn't work with Nashorn
Reviewed-by: lagergren, attila
2013-03-04 11:44:54 +01:00
Attila Szegedi
0248a98842 8006984: Introducing local into a function inside with statement confuses its scope
Reviewed-by: jlaskey, lagergren, sundar
2013-02-25 16:51:04 +01:00
Athijegannathan Sundararajan
f688068adf 8008731: Separate configuration environment (options, error/output writer etc.) from Context
Reviewed-by: hannesw, lagergren
2013-02-25 16:58:31 +05:30
Marcus Lagergren
90b971a60d 8008554: load was broken for URLs
Reviewed-by: attila, sundar
2013-02-22 08:57:22 +01:00
Marcus Lagergren
9ff7a57a0f 8008648: Lazy JIT scope and callee semantics bugfixes. Broke out wallclock timer
Reviewed-by: attila, hannesw
2013-02-21 16:57:21 +01:00
Athijegannathan Sundararajan
be8f1b2b35 8008448: Add coverage test for jdk.nashorn.internal.ir.debug.JSONWriter
Reviewed-by: jlaskey, attila
2013-02-19 20:33:07 +05:30
Athijegannathan Sundararajan
350c3e01c1 8008387: Improve code coverage tests for JSObjectLinker and NashornBottomLinker
Reviewed-by: lagergren, jlaskey, hannesw
2013-02-18 20:41:12 +05:30
Athijegannathan Sundararajan
b1f72f6fd2 8008305: ScriptEngine.eval should offer the ability to provide a codebase
Reviewed-by: lagergren, hannesw, attila
2013-02-18 14:41:58 +05:30
Athijegannathan Sundararajan
1fb8213bb0 8008298: Add tests to cover specialized versions of Math functions
Reviewed-by: jlaskey, lagergren
2013-02-15 20:40:05 +05:30
Athijegannathan Sundararajan
c09d1ba6d7 8008291: Add more tests for better coverage of objects, scripting and parser packages
Reviewed-by: lagergren, jlaskey
2013-02-15 18:30:19 +05:30
Hannes Wallnöfer
8edbed784d 8008215: break in catch clause causes java.lang.VerifyError: Inconsistent stackmap
Reviewed-by: jlaskey, lagergren
2013-02-15 09:18:05 +01:00
Hannes Wallnöfer
6aeeee6b63 8008198: java.lang.AssertionError: Invalid break target class jdk.nashorn.internal.ir.TryNode
Reviewed-by: attila, jlaskey
2013-02-14 14:07:53 +01:00
Attila Szegedi
85c55a2aa4 8007990: No access to interface methods on a restricted class
Reviewed-by: jlaskey, lagergren, sundar
2013-02-14 13:51:54 +01:00
Marcus Lagergren
af9c882b95 8008206: The allInteger case for SwitchNode generation in CodeGenerator assumes integer LITERALS only
Reviewed-by: sundar, jlaskey
2013-02-14 13:52:12 +01:00
Attila Szegedi
82f8cef55c 8008085: Integrate Dynalink source code into Nashorn codebase
Reviewed-by: jlaskey, lagergren, sundar
2013-02-14 13:22:26 +01:00
Marcus Lagergren
7c466c84eb 8008199: Lazy compilation and trampoline implementation
The code pipeline now supports lazy compilation, which can be used to only compile certain FunctionNodes and leave others be, saving startup time. When these uncompiled nodes are hit, a trampoline will force them to be recompiled. This can also be used to specialize compilation fixing parameter types and return types to a callsite specific compilation. This will give performance.

Reviewed-by: attila, sundar
2013-02-14 13:01:52 +01:00
Athijegannathan Sundararajan
022533a749 8008197: Cross script engine function calls do not work as expected
Reviewed-by: lagergren, hannesw
2013-02-14 14:16:58 +05:30
Attila Szegedi
d50e3823e4 8007900: Function binding is inefficient
Reviewed-by: jlaskey, lagergren
2013-02-12 12:47:51 +01:00
Athijegannathan Sundararajan
1e1537c13f 8007915: Nashorn IR, codegen, parser packages and Context instance should be inaccessible to user code
Reviewed-by: lagergren, jlaskey, attila
2013-02-11 21:26:06 +05:30
Hannes Wallnöfer
f2dc010c16 8007718: Make static RegExp properties fully compatible to other engines
Reviewed-by: lagergren, sundar
2013-02-07 15:33:17 +01:00
Athijegannathan Sundararajan
b247ddfcc3 8007715: Make sure that not all tests run with AllPermission
Reviewed-by: lagergren, attila
2013-02-07 17:17:29 +05:30
James Laskey
57ef7ce075 8007643: Add testing for quit and exit
Reviewed-by: sundar
2013-02-06 12:51:09 -04:00
Athijegannathan Sundararajan
c95d492268 8007619: Add support for deprecated properties of RegExp constructor
Reviewed-by: lagergren, hannesw
2013-02-06 17:56:12 +05:30
Athijegannathan Sundararajan
292a819b53 8007523: VerifyError on script that uses regular expression literals with ternary operator
Reviewed-by: lagergren
2013-02-05 22:07:04 +05:30
Athijegannathan Sundararajan
ac9ca521ad 8007522: IllegalStateException thrown from String.prototype.search function
Reviewed-by: jlaskey
2013-02-05 21:00:04 +05:30
Athijegannathan Sundararajan
be500502ec 8007521: $ENV should be undefined when security manager is present
Reviewed-by: hannesw, jlaskey
2013-02-05 18:44:54 +05:30
James Laskey
233a9042cf 8006191: cmd -> exec("cmd") in script mode
Reviewed-by: sundar, lagergren, hannesw
2013-02-04 14:48:35 -04:00
Marcus Lagergren
8b7a8d75b3 8007215: Varargs broken for the case of passing more than the arg limit arguments
Reviewed-by: jlaskey, attila
2013-02-04 16:20:05 +01:00
Attila Szegedi
bd2303d9e4 8007460: var assignment to a parameter in a varargs method causes compilation error
Reviewed-by: jlaskey, lagergren
2013-02-04 15:59:44 +01:00
Hannes Wallnöfer
4f2891ca8d 8007060: Primitive wrap filter throws ClassCastException in test262parallel
Reviewed-by: sundar, jlaskey, lagergren
2013-02-01 02:24:15 +01:00
Attila Szegedi
fe52eb5992 8006529: Methods always get callee - it should be conditional
This commit streamlines the bytecode function signatures, prologue, local variable use, scope creation, and invocation. It started out quite innocently when we noticed that we always emit __callee__ parameters for all functions even when they are not needed, but it turned out to be quite a deep rabbit hole. In the end, I identified exact conditions when functions need to have a callee parameter, when they need to receive parent scope, when they need to create their own scope, when they need to have variable arity signature, and when they need to have an "arguments" object, and made sure that callee parameters in signatures only show up when they are needed, that parent function's scope is only passed to a child function when it is needed, that the function only creates its own scope when it is needed. In crypto.js, the number of scopes dropped from 446 to 244, and the number of callees dropped from 315 to 145.

Reviewed-by: jlaskey, lagergren
2013-01-31 18:34:42 +01:00
Athijegannathan Sundararajan
bdcffc23f7 8007286: Add JavaAdapter and importPackage to compatibility script
Reviewed-by: lagergren, jlaskey
2013-01-31 20:07:40 +05:30
Athijegannathan Sundararajan
fcd28bdcc5 8007140: Java.extend crashes when attempting to extend java.lang.Object
Reviewed-by: lagergren, hannesw
2013-01-30 21:15:14 +05:30
Hannes Wallnöfer
411b70d54a 8007109: Regression: String(ConsString) does not flatten argument to String
Reviewed-by: sundar, lagergren
2013-01-30 14:57:19 +01:00
Athijegannathan Sundararajan
8cd63a75f2 8007132: Java objects returned from constructor functions are lost
Reviewed-by: hannesw, lagergren, attila
2013-01-30 17:52:54 +05:30
Marcus Lagergren
30b950d2d2 8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes
Lower suffered from being a "God class" trying to do everything at once.  As Nashorn code generation has grown, so has Lower. It does several post processing passes, tries to do several things at once even though all type information isn't in place, adjusting state afterwards and so on. It also performs control flow analysis, type attribution and constant folding, and  everything else code generation related before byte code emission. I have now separated the compilation process into Lower (create low level nodes from high level ones, copy code such as finally block inlining etc), Attr (assign types and symbols to all nodes - freeze slot and scope information) and FinalizeTypes (insert explicit casts, specialize invoke dynamic types for scope accesses). I've removed the kludgy AccessSpecializer, as this now integrates naturally with typing. Everything is now much easier to read and each module performs only one thing. I have added separate loggers for the separate tiers. In the process I have also fixed: (1) problems with type coercion (see test/script/basic/typecoercion.js, basically our coercion was too late and our symbol inference was erroneous. This only manifested itself in very rare occasions where toNumber coercion has side effects, such as for example when valueOf is overridden)  (2) copying literal nodes (literal copy did not use the superclass copy, which made all the Node specific fields not to be copied  (3) erroneous literal tokenization (literals shouldn't always just inherit token information from whatever node that creates them) (4) splitter weighnodes - unary nodes were considered weightless  (4) removed the hateful and kludgy "VarNode.shouldAppend", which really isn't needed when we have an attribution phase that determines self reference symbols (the only thing it was used for) (5) duplicate line number issues in the parser (6) convert bug in CodeGenerator for intermediate results of scope accesses (see test/script/basic/access-specializer.js) ... Several of these things just stopped being problems with the new architecture "can't happen anymore" and are not bug fixes per se. All tests run. No performance regressions exist that I've been able to measure. Some increases in performance were measured, but in the statistical margin of error (which is very wide as HotSpot currently has warmup issues with LambdaForms/invoke dynamic). Compile speed has not measurably increased.

Reviewed-by: jlaskey, attila
2013-01-30 12:26:45 +01:00
Athijegannathan Sundararajan
daaeb20eff 8006983: Introduce a command line option to switch off syntactic extensions of nashorn
Reviewed-by: lagergren, attila
2013-01-28 18:10:16 +05:30
Athijegannathan Sundararajan
5231fef61c 8006857: ClassCastException when interface implementing function uses arguments object
Reviewed-by: jlaskey, lagergren
2013-01-24 22:38:58 +05:30
James Laskey
c2bdb49b75 8006852: Move tests from JIRA for prepopulated map failures
Reviewed-by: sundar
2013-01-24 12:15:29 -04:00
Athijegannathan Sundararajan
d3f071dc73 8006755: Functions inside with statements dont get correct scope
Reviewed-by: lagergren, attila
2013-01-24 17:49:03 +05:30
Athijegannathan Sundararajan
67db0ba236 8006575: Error in codegen for element access on primitive value
Reviewed-by: hannesw, lagergren
2013-01-24 16:21:32 +05:30
Hannes Wallnöfer
739b531642 8006570: This-value for non-strict functions should be converted to object
Reviewed-by: jlaskey, lagergren, attila
2013-01-22 14:14:37 +01:00
Athijegannathan Sundararajan
07484149d6 8006527: nashorn jsr223 engine does not work in sandbox
Reviewed-by: jlaskey, attila, lagergren
2013-01-18 08:45:06 +05:30
Athijegannathan Sundararajan
71e9d57ee3 8006424: Passing null or undefined to adapter class constructors results in NPE or ClassCastException
Reviewed-by: attila, hannesw, jlaskey
2013-01-16 21:26:55 +05:30
James Laskey
c6c424f27a 8006304: Remove pre-population of maps for constructor produced maps
Reviewed-by: sundar
2013-01-16 07:06:40 -04:00
Attila Szegedi
a2efb1b4f5 8006337: Discarded arguments for INVOKESTATIC must still be evaluated for side effects
Reviewed-by: hannesw, jlaskey, sundar
2013-01-15 18:08:50 +01:00
Attila Szegedi
311e57397d 8005958: invoking a function through INVOKESTATIC with more arguments than it declares resulted in malformed bytecode being generated
Reviewed-by: lagergren, jlaskey
2013-01-15 17:09:44 +01:00
Attila Szegedi
f36a46aea4 8006168: ability to generate multi-type Java adapters
Reviewed-by: lagergren, jlaskey
2013-01-14 16:00:55 +01:00
Attila Szegedi
ddf4b86c57 8005983: JavaAdapterFactory generated proxy classes should take extra constructor arguments at the end
Reviewed-by: lagergren, sundar
2013-01-10 15:28:05 +01:00
Athijegannathan Sundararajan
164350cecf 8005982: NASHORN-71.js failing in nightlys
Reviewed-by: attila, lagergren, jlaskey
2013-01-10 19:55:38 +05:30
Marcus Lagergren
3d269485fc 8005971: runsunspider.js should check results of benchmarks
Reviewed-by: attila, hannesw
2013-01-10 10:28:57 +01:00
Athijegannathan Sundararajan
ff9829969f 8005940: provide ant targets to get and update external test scripts
Reviewed-by: jlaskey, lagergren
2013-01-09 22:32:40 +05:30
Athijegannathan Sundararajan
e40b456a27 8005848: assigning to global toString variable affects Object.prototype.toString
Reviewed-by: jlaskey, lagergren
2013-01-08 21:16:07 +05:30
Marcus Lagergren
eb0f10508f 8005843: refSymbols lookup of unbound variable could cause NullPointerException in Lower
Reviewed-by: hannesw, attila
2013-01-08 10:52:11 +01:00
Athijegannathan Sundararajan
d8e79f1ce1 8005835: NASHORN-668 output fails to compare with the corresponding .EXPECTED file
Reviewed-by: lagergren, hannesw
2013-01-08 15:02:36 +05:30
James Laskey
311f43d5a6 8005663: Update copyright year to 2013
Reviewed-by: sundar
2013-01-04 09:58:33 -04:00
Jim Laskey
98762d6ee0 8005403: Open-source Nashorn
Co-authored-by: Akhil Arora <akhil.arora@oracle.com>
Co-authored-by: Andreas Woess <andreas.woess@jku.at>
Co-authored-by: Attila Szegedi <attila.szegedi@oracle.com>
Co-authored-by: Hannes Wallnoefer <hannes.wallnoefer@oracle.com>
Co-authored-by: Henry Jen <henry.jen@oracle.com>
Co-authored-by: Marcus Lagergren <marcus.lagergren@oracle.com>
Co-authored-by: Pavel Semenov <pavel.semenov@oracle.com>
Co-authored-by: Pavel Stepanov <pavel.stepanov@oracle.com>
Co-authored-by: Petr Hejl <petr.hejl@oracle.com>
Co-authored-by: Petr Pisl <petr.pisl@oracle.com>
Co-authored-by: Sundararajan Athijegannathan <sundararajan.athijegannathan@oracle.com>
Reviewed-by: attila, hannesw, lagergren, sundar
2012-12-21 16:36:24 -04:00