Commit Graph

491 Commits

Author SHA1 Message Date
Athijegannathan Sundararajan
62e846549d 8055107: Extension directives to turn on callsite profiling, tracing, AST print and other debug features locally
Reviewed-by: attila, jlaskey
2014-08-14 18:54:54 +05:30
Athijegannathan Sundararajan
a98a0d19e1 8055034: jjs exits interactive mode if exception was thrown when trying to print value of last evaluated expression
Reviewed-by: jlaskey, attila
2014-08-13 21:03:37 +05:30
Athijegannathan Sundararajan
f2ebff72ba 8054993: type info cache may be disabled for test262 and tests explicitly changing that property should use @fork
Reviewed-by: lagergren, hannesw
2014-08-13 15:00:24 +05:30
Hannes Wallnöfer
f71b48d575 8044851: nashorn properties leak memory
Reviewed-by: attila, jlaskey, lagergren
2014-08-12 13:22:05 +02:00
Athijegannathan Sundararajan
a603833464 8054503: test/script/external/test262/test/suite/ch12/12.6/12.6.4/12.6.4-2.js fails with tip
Reviewed-by: jlaskey, hannesw, attila
2014-08-11 20:35:21 +05:30
Hannes Wallnöfer
a8ece5cffc 8043956: Make code caching work with optimistic typing and lazy compilation
Reviewed-by: attila, lagergren
2014-08-08 12:50:46 +02:00
Attila Szegedi
9d38762126 8046026: CompiledFunction.relinkComposableInvoker assert is being hit
Reviewed-by: hannesw, jlaskey, sundar
2014-08-07 11:06:45 +02:00
Attila Szegedi
5d2615f1cb 8051439: Wrong type calculated for ADD operator with undefined operand
Reviewed-by: jlaskey, sundar
2014-08-06 11:02:14 +02:00
Attila Szegedi
1eb6e5cb42 8044786: Some tests fail with non-optimistic compilation
Reviewed-by: hannesw, jlaskey
2014-08-06 10:42:46 +02:00
Athijegannathan Sundararajan
a55d1b4b75 8053908: jdeps is not PATH on Mac, results in ant clean test failure on Mac
Reviewed-by: hannesw, jlaskey
2014-07-31 18:14:46 +05:30
Sergey Lugovoy
ce3b922118 8049318: Test hideLocationProperties.js fails on Window due to backslash in path
Reviewed-by: lagergren, sundar
2014-07-30 16:49:02 +04:00
Marcus Lagergren
5c93b19922 8048869: Reduce compile time by about 5% by removing the Class.casts from the AST nodes
Removed the native casts that slow down the compiler unnecessarily. I also modified the compile-octane harness so that it can run with --verbose and --iterations flags so that you can run the compiler for an arbitrary time, gathering a mission control executing profile.

Reviewed-by: attila, jlaskey
2014-07-29 14:21:45 -07:00
Athijegannathan Sundararajan
4323d2ade5 8050964: OptimisticTypesPersistence.java should use java.util.Date instead of java.sql.Date
Reviewed-by: jlaskey
2014-07-17 16:47:06 +05:30
Athijegannathan Sundararajan
8a77a443db 8050432: javax.script.filename variable should not be enumerable with nashorn engine's ENGINE_SCOPE bindings
Reviewed-by: jlaskey
2014-07-15 16:54:01 +05:30
Attila Szegedi
a9b421dd42 8047067: all eval arguments need to be copied in Lower
Reviewed-by: lagergren, sundar
2014-07-08 13:13:31 +02:00
Athijegannathan Sundararajan
ca212c0d9e 8049086: Minor API convenience functions on "Java" object
Reviewed-by: attila, hannesw
2014-07-04 15:56:53 +05:30
Athijegannathan Sundararajan
14eb01cb47 8049242: Explicit constructor overload selection should work with StaticClass as well
Reviewed-by: jlaskey, attila
2014-07-03 23:03:37 +05:30
Attila Szegedi
d9cdc6efec 8047166: 'do with({}) break ; while(0);' crashes in CodeGenerator
Reviewed-by: hannesw, jlaskey
2014-07-03 16:15:33 +02:00
Athijegannathan Sundararajan
27ba0956b6 8043232: Index selection of overloaded java new constructors
Reviewed-by: attila, hannesw, jlaskey
2014-07-02 18:10:31 +05:30
Athijegannathan Sundararajan
81f8f93225 8047359: large string size RangeError should be thrown rather than reporting negative length
Reviewed-by: hannesw, attila
2014-07-01 17:37:39 +05:30
Hannes Wallnöfer
3e0fd99223 8048586: String concatenation with optimistic types is slow
Reviewed-by: lagergren, attila
2014-06-30 17:31:28 +02:00
Athijegannathan Sundararajan
51aad86e6b 8048718: JSON.parse('{"0":0, "64":0}') throws ArrayindexOutOfBoundsException
Reviewed-by: lagergren, hannesw, attila
2014-06-30 20:23:16 +05:30
Athijegannathan Sundararajan
4b428d5833 8046013: TypeError: Cannot apply "with" to non script object
Reviewed-by: lagergren, hannesw
2014-06-27 21:54:16 +05:30
Marcus Lagergren
8f69a3e4a8 8048505: ScriptingFunctions.readFully couldn't handle file names represented as ConsStrings
Reviewed-by: sundar, hannesw
2014-06-27 10:47:44 +02:00
Attila Szegedi
3168df50f5 8047371: local variable declaration in TypeEvaluator should use ScriptObject.addOwnProperty instead of .set
Reviewed-by: jlaskey, lagergren
2014-06-26 15:36:15 +02:00
Attila Szegedi
9dde0bfa35 8047357: More precise synthetic return + unreachable throw
Reviewed-by: lagergren, sundar
2014-06-26 13:12:32 +02:00
Hannes Wallnöfer
ccb4ecb339 8048079: Persistent code store is broken after optimistic types merge
Reviewed-by: sundar, jlaskey, attila
2014-06-25 14:36:24 +02:00
Athijegannathan Sundararajan
dee1364e7c 8048071: eval within 'with' statement does not use correct scope if with scope expression has a copy of eval
Reviewed-by: hannesw, jlaskey
2014-06-25 17:08:47 +05:30
Athijegannathan Sundararajan
566786aba6 8047959: bindings created for declarations in eval code are not mutable
Reviewed-by: jlaskey, attila
2014-06-24 19:43:44 +05:30
Athijegannathan Sundararajan
90b667d865 8047728: (function(x){var o={x:0}; with(o){delete x} return o.x})() evaluates to 0 instead of undefined
Reviewed-by: jlaskey, hannesw, attila
2014-06-23 21:23:53 +05:30
Attila Szegedi
7aa808a993 8046905: apply on apply is broken
Reviewed-by: hannesw, lagergren
2014-06-23 10:59:33 +02:00
Attila Szegedi
f4c68a9cfc 8046921: Deoptimization type information peristence
Reviewed-by: hannesw, lagergren
2014-06-20 12:25:00 +02:00
Athijegannathan Sundararajan
2bdfb1233c 8047369: Add regression tests for passing test cases of JDK-8024971
Reviewed-by: hannesw, jlaskey
2014-06-19 20:36:03 +05:30
Marcus Lagergren
18ac28e76f 8047078: Fuzzing bug discovered when ArrayLiteralNodes weren't immutable
Reviewed-by: attila, sundar
2014-06-19 10:46:31 +02:00
Athijegannathan Sundararajan
186990579d 8047057: Add a regression test for the passing test cases from JDK-8042304
Reviewed-by: lagergren, attila
2014-06-17 18:23:35 +05:30
Athijegannathan Sundararajan
ff164ddca5 8047035: (function() "hello")() crashes in Lexer with jdk9
Reviewed-by: lagergren, hannesw, attila
2014-06-17 15:55:39 +05:30
Athijegannathan Sundararajan
5de5a29808 8044798: API for debugging Nashorn
Reviewed-by: jlaskey, hannesw
2014-06-11 08:53:35 +05:30
Attila Szegedi
fb404de88f 8038413: NPE in unboxInteger
Reviewed-by: jlaskey, sundar
2014-06-04 20:43:37 +02:00
Athijegannathan Sundararajan
a5af8cb53e 8044695: __stack__ becomes visible in Error properties
Reviewed-by: lagergren, jlaskey, attila
2014-06-04 19:01:24 +05:30
Attila Szegedi
52ac2452d0 8044502: Get rid of global optimistic flag
Reviewed-by: lagergren, sundar
2014-06-04 14:32:23 +02:00
Attila Szegedi
5ec014a881 8044638: Tidy up Nashorn codebase for code standards
Reviewed-by: lagergren, sundar
2014-06-04 13:08:57 +02:00
Athijegannathan Sundararajan
7898fee89e 8044750: megamorphic getter for scope objects does not call __noSuchProperty__ hook
Reviewed-by: attila, lagergren, hannesw
2014-06-04 13:55:21 +05:30
Attila Szegedi
52e0363faa 8044534: Constant folding for unary + should produce int for boolean literals
Reviewed-by: lagergren, sundar
2014-06-03 12:05:42 +02:00
Attila Szegedi
938ab83ff7 8044533: Deoptimizing negation produces wrong result for zero
Reviewed-by: lagergren, sundar
2014-06-03 12:04:36 +02:00
Athijegannathan Sundararajan
dba2bf3f02 8044520: Nashorn cannot execute node.js's express module
Reviewed-by: hannesw, lagergren
2014-06-03 14:13:03 +05:30
Athijegannathan Sundararajan
95ad9113d9 8044612: StringIndexOutOfBoundException in NativeRegExp.appendReplacement
Reviewed-by: hannesw, lagergren
2014-06-03 13:57:52 +05:30
Attila Szegedi
2ff2ad2750 Merge 2014-06-02 17:36:43 +02:00
Attila Szegedi
9fb4c3accc Merge 2014-05-28 16:53:43 +02:00
Marcus Lagergren
d4287c2288 8044102: Ensure bechmark exclude list for Octane benchmarks is in only one place, project.properties, and fix benchmark harness
Reviewed-by: attila, sundar
2014-05-28 13:58:46 +02:00
Marcus Lagergren
a6e90a4ba3 8044012: Integrate the latest best known performance flags int ant octane jobs, and make sure that it's easy to compare 'ant octane-nashorn' and 'ant octane-v8' at the push of a button. (or rather; the entry of a command line)
Reviewed-by: jlaskey, sundar
2014-05-27 21:25:07 +02:00
Athijegannathan Sundararajan
f7940fec73 8043930: TypeError when attemping to create an instance of non-public class could be better
Reviewed-by: attila, lagergren
2014-05-26 15:48:25 +05:30
Hannes Wallnöfer
67d65fd0df 8030202: Nashorn: Multiple RegExp#ignoreCase issues
Reviewed-by: sundar, jlaskey
2014-05-22 17:51:56 +02:00
Marcus Lagergren
b4b7b4e53d 8043632: Parallelize class installation and various script fixes
Reviewed-by: sundar, attila
2014-05-21 16:12:40 +02:00
Marcus Lagergren
cc1275a3bf 8043611: Move timing dependent benchmark for apply2call specialization to currently_failing. It is dependent that nothing takes machine time when doing the two runs, causing spurious assertions. Suggest running octane.raytrace manually instead to verify that this works, or incorporating it in the nightly test suite
Reviewed-by: sundar, attila
2014-05-21 16:12:40 +02:00
Marcus Lagergren
3d7f88fb31 8043504: Octane test harness was missing argument to print_always at one callsite, causing erroneous logging
Reviewed-by: sundar, attila
2014-05-20 10:40:28 +02:00
Athijegannathan Sundararajan
db62a418b3 8043443: Test framework changes to run script tests without security manager
Reviewed-by: attila
2014-05-20 08:32:09 +05:30
Attila Szegedi
cfbed730b7 8043431: Fix yet another corner case of JDK-8041995
Reviewed-by: hannesw, lagergren
2014-05-19 18:24:12 +02:00
Marcus Lagergren
26308e1cd6 8034206: Make parts of code pipeline reusable in order to facilitate faster warmup and faster lazy compilation
Reviewed-by: hannesw, attila
2014-05-19 15:29:42 +02:00
Attila Szegedi
b0873269dc 8043235: Type-based optimizations interfere with continuation methods
Reviewed-by: jlaskey, lagergren
2014-05-15 15:28:51 +02:00
Attila Szegedi
4fd3436709 8043133: Fix corner cases of JDK-8041995
Reviewed-by: hannesw, lagergren
2014-05-14 17:05:08 +02:00
Attila Szegedi
64fd9c191a 8042118: Separate types from symbols
Reviewed-by: hannesw, lagergren
2014-05-13 11:30:40 +02:00
Athijegannathan Sundararajan
f96b4d2e4e 8042364: Make __proto__ ES6 draft compliant
Reviewed-by: jlaskey, lagergren, attila
2014-05-06 17:54:15 +05:30
Hannes Wallnöfer
77834a008e 8041998: RegExp implementation is not thread-safe
Reviewed-by: lagergren, sundar, attila
2014-05-06 12:38:12 +02:00
Matherey Nunez
31c5e7065a 8037572: Add more test cases to check static types
Reviewed-by: attila, lagergren
2014-05-05 14:17:20 +02:00
Marcus Lagergren
2f01820f6d 8041625: AccessorProperty currentType must only by Object.class when non-primitive, and scoping followup problem for lazily generated with bodies
Reviewed-by: jlaskey, attila
2014-05-02 18:22:29 +02:00
Athijegannathan Sundararajan
7579bb9eb4 8027933: Add --const-as-var option
Reviewed-by: jlaskey, hannesw
2014-05-02 19:15:59 +05:30
Matherey Nunez
e9e18d5614 8038398: OptimisticRecompilationTest fails on staging repo nashorn/jdk9/nashorn due to test framework
Reviewed-by: attila, lagergren
2014-04-29 16:00:53 +02:00
Marcus Lagergren
a3f88441db 8041995: Problems when loading tree expressions with several optimistic program points when optimistically initializing ObjectNodes
Reviewed-by: jlaskey, attila
2014-04-28 16:37:36 +02:00
Hannes Wallnöfer
60a0f257df 8040078: Avoid repeated reading of source for cached loads
Reviewed-by: jlaskey, lagergren
2014-04-25 16:34:17 +02:00
Marcus Lagergren
6163a42a8e 8033105: Make sure Nashorn test harness can run zlib benchmark
Reviewed-by: attila, hannesw
2014-04-22 14:09:46 +02:00
Matherey Nunez
af27b4200d 8040655: When processing a RewriteException debug object, the return value has already been reset to null. We need to catch this value before that
Reviewed-by: attila, lagergren
2014-04-18 21:24:34 +02:00
Marcus Lagergren
89f65d6006 8040089: Apply to call transform was incomplete. Now passes all tests and performance is back
Reviewed-by: hannesw, attila, sundar, jlaskey
2014-04-17 20:01:19 +02:00
Marcus Lagergren
e83ae85105 Merge 2014-04-11 16:52:56 +02:00
Marcus Lagergren
8692f48723 8039746: Transform applies to calls wherever possible, for ScriptFunctions and JSObjects
Reviewed-by: hannesw, attila, sundar, jlaskey
2014-04-11 16:52:14 +02:00
Attila Szegedi
67871d3371 8040024: BranchOptimizer produces bad code for NaN FP comparison
Reviewed-by: jlaskey, lagergren
2014-04-11 16:40:06 +02:00
Marcus Lagergren
d12e5e7d29 8039044: Expand undefined intrinsics for all commutative combinators of scrict undefined checks
Reviewed-by: jlaskey, hannesw
2014-04-02 10:52:39 +02:00
Marcus Lagergren
fd8e5653a0 8038945: Simplify strict undefined checks
Reviewed-by: jlaskey, hannesw
2014-04-01 16:12:38 +02:00
Marcus Lagergren
1584dc799c 8038799: Guard and unbox boxed primitives types on setting them in Properties to avoid megamorphisism
Reviewed-by: attila, jlaskey
2014-04-01 11:19:32 +02:00
Marcus Lagergren
379d9f239f 8027043: Turn global accesses into MethodHandle.constant, with one chance of reassignment, e.g. x = value occuring once in the global scope is ok, twice is not
Reviewed-by: attila, sundar, jlaskey
2014-03-31 14:13:34 +02:00
Marcus Lagergren
f6722c9a3f 8038406: Testability: as a first step of moving loggers away from the process global space, the Debug object now supports logging POJOs from log entries as an event queue, which can be introspected from test scripts. This is way better than screen scraping brittle and subject-to-change log output
Reviewed-by: attila, hannesw, sundar
2014-03-27 11:45:54 +01:00
Attila Szegedi
0cbec476dd 8037534: Use scope types to determine optimistic types
Reviewed-by: hannesw, lagergren
2014-03-24 18:41:06 +01:00
Attila Szegedi
85bc811235 Merge 2014-03-21 17:52:03 +01:00
Matherey Nunez
ba6fce6273 8036986: Test should check that correctly type is returned running with optimistic. If optimistic assumption was wrong we should get the right one
This uses the inspection framework for generated code to ensure optimisim.

Reviewed-by: attila, lagergren
2014-03-14 14:27:32 +01:00
Athijegannathan Sundararajan
572d581262 8015958: DataView constructor is not defined
Reviewed-by: attila, hannesw, lagergren
2014-03-13 15:58:24 +05:30
Hannes Wallnöfer
6f1436baa2 8034055: delete on global object not properly guarded
Reviewed-by: sundar, lagergren
2014-03-12 16:33:28 +01:00
Marcus Lagergren
8d4fc394e0 8035836: Array performance improvements
Implement typed arrays with native byte buffers and do fast linking for all continuous arrays

Reviewed-by: attila, jlaskey, sundar, hannesw
2014-03-03 11:24:44 +01:00
Attila Szegedi
e9e7dd2ec1 8035820: Optimistic recompilation
Co-authored-by: Marcus Lagergren <marcus.lagergren@oracle.com>
Reviewed-by: hannesw, jlaskey, sundar
2014-02-26 13:17:57 +01:00
Athijegannathan Sundararajan
18489cc7a4 8030197: Nashorn: Object.defineProperty() can be lured to change fixed NaN property
Reviewed-by: attila, jlaskey
2014-02-25 18:56:10 +05:30
Hannes Wallnöfer
2194adb36b 8030200: Wrong result for Number.prototype.toString() for certain radix/inputs
Reviewed-by: sundar, jlaskey, lagergren
2014-04-14 17:45:05 +02:00
Hannes Wallnöfer
08bec4bee8 8030199: Nashorn: Uint8ClampedArray - Incorrect ToUint8Clamp implementation
Reviewed-by: sundar, jlaskey, lagergren
2014-04-14 17:43:38 +02:00
Athijegannathan Sundararajan
319aa4c4c5 8039387: Nashorn supports indexed access of List elements, but length property is not supported
Reviewed-by: lagergren, jlaskey
2014-04-07 21:57:33 +05:30
Athijegannathan Sundararajan
79fba7993d 8039047: Parser accepts conditional catch clauses even when --no-syntax-extensions / -nse option is passed
Reviewed-by: lagergren, attila
2014-04-02 15:52:31 +05:30
Athijegannathan Sundararajan
4036a466ca 8037562: Nashorn: JSON.parse comes up with nonexistent entries if there are gaps between the keys
Reviewed-by: jlaskey, hannesw
2014-03-21 20:24:01 +05:30
Athijegannathan Sundararajan
1dd97ac6e7 8011964: need indexed access to externally-managed ByteBuffer
Reviewed-by: lagergren, hannesw
2014-02-14 19:02:02 +05:30
Matherey Nunez
615623c473 8033231: test fails with java.lang.UnsatisfiedLinkError
Reviewed-by: attila, sundar
2014-02-11 12:05:22 +01:00
Athijegannathan Sundararajan
118cf2ba60 8033924: Default permissions are not given for eval code
Reviewed-by: lagergren, jlaskey
2014-02-07 18:47:46 +05:30
Athijegannathan Sundararajan
3dd998447a 8033763: Add tests to assert map identity of certain objects
Reviewed-by: hannesw, lagergren
2014-02-06 17:44:37 +05:30
Attila Szegedi
281b87b796 8032681: Issues with Nashorn
Reviewed-by: ahgross, jlaskey, sundar
2014-01-30 20:13:27 +01:00
Athijegannathan Sundararajan
6d897ac7a8 8032954: Nashorn: extend Java.extend
Reviewed-by: jlaskey, attila, ahgross
2014-01-30 18:49:47 +05:30
Athijegannathan Sundararajan
3d9115510c 8032943: Improve reflection in Nashorn
Reviewed-by: jlaskey, attila, ahgross
2014-01-30 18:26:15 +05:30