v8/test/mjsunit/compiler
adamk ed18aa65ea Remove support for legacy const, part 1
Now that ES2015 const has shipped, in Chrome 49, legacy const declarations
are no more. This lets us remove a bunch of code from many parts of the
codebase.

In this patch, I remove parser support for generating legacy const variables
from const declarations. This also removes the special "illegal declaration"
bit from Scope, which has ripples into all compiler backends.

Also gone are any tests which relied on legacy const declarations.

Note that we do still generate a Variable in mode CONST_LEGACY in one case:
function name bindings in sloppy mode. The likely fix there is to add a new
Variable::Kind for this case and handle it appropriately for stores in each
backend, but I leave that for a later patch to make this one completely
subtractive.

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

Cr-Commit-Position: refs/heads/master@{#35002}
2016-03-22 17:52:13 +00:00
..
alloc-number-debug.js
alloc-number.js
alloc-object-huge.js
alloc-object.js
array-access.js
array-length.js
assignment-deopt.js
assignment.js
binary-ops.js
boolean-protototype.js [turbofan] We can inline property access for all primitives. 2015-11-03 10:44:57 +00:00
call-keyed.js
compare-map-elim2.js
compare-map-elim.js
compare-objeq-elim.js
compare.js
complex-for-in.js
concurrent-invalidate-transition-map.js
concurrent-proto-change.js
control-flow-0.js
control-flow-1.js
control-flow-2.js
count-deopt.js
countoperation.js
dead-code2.js
dead-code3.js
dead-code4.js
dead-code5.js
dead-code6.js
dead-code.js
dead-loops-neg.js
dead-loops.js
dead-string-add-warm.js
dead-string-add.js
dead-string-char-code-at2.js
dead-string-char-code-at.js
dead-string-char-from-code.js
debug-catch-prediction.js Reland of [interpreter] Correctly thread through catch prediction. (patchset #1 id:1 of https://codereview.chromium.org/1695613002/ ) 2016-02-12 09:52:23 +00:00
delete.js
deopt-args.js
deopt-bool2.js Add test for deoptimization bug. 2015-04-22 14:32:49 +00:00
deopt-bool.js Add test for deoptimization bug. 2015-04-22 14:32:49 +00:00
deopt-during-eval-lookup.js [Interpreter] Add support for CallRuntimeForPair to Bytecode Graph Builder. 2016-01-08 16:40:58 +00:00
deopt-inlined-from-call.js
deopt-inlined-smi.js
deopt-materialize-accumulator.js [builtins] Add support for JS builtins written in TurboFan. 2016-03-22 13:25:54 +00:00
deopt-tonumber-binop.js [turbofan] Fix lazy deopt for JSToNumber conversions in binary operations. 2015-03-09 13:24:42 +00:00
deopt-tonumber-compare.js [turbofan] Add frame state before JavaScript comparisons. 2015-05-13 07:38:35 +00:00
deopt-tonumber-shift.js [turbofan] Use frame state before for shift operations as well. 2015-05-13 11:17:28 +00:00
division-by-constant.js
double-array-to-global.js [turbofan] Introduce proper ObjectIsReceiver operator. 2016-02-02 11:43:02 +00:00
eager-deopt-simple.js [turbofan] Only reduce inline %DeoptimizeNow. 2015-03-09 13:20:26 +00:00
escape-analysis-1.js [turbofan] Initial support for escape analysis. 2015-12-02 10:53:50 +00:00
escape-analysis-2.js [turbofan] Initial support for escape analysis. 2015-12-02 10:53:50 +00:00
escape-analysis-3.js [turbofan] Initial support for escape analysis. 2015-12-02 10:53:50 +00:00
escape-analysis-4.js [turbofan] Initial support for escape analysis. 2015-12-02 10:53:50 +00:00
escape-analysis-5.js [turbofan] Initial support for escape analysis. 2015-12-02 10:53:50 +00:00
escape-analysis-6.js [turbofan] Initial support for escape analysis. 2015-12-02 10:53:50 +00:00
escape-analysis-7.js [turbofan] Improve escape analysis 2015-12-07 13:29:06 +00:00
escape-analysis-8.js [turbofan] Initial support for escape analysis. 2015-12-02 10:53:50 +00:00
escape-analysis-9.js [turbofan] Improve escape analysis 2015-12-07 13:29:06 +00:00
escape-analysis-10.js [turbofan] Stabilize escape analysis (without deopt) 2015-12-14 13:14:17 +00:00
escape-analysis-arguments.js
escape-analysis-deopt-1.js [turbofan] Deopt support for escape analysis 2016-01-05 13:31:02 +00:00
escape-analysis-deopt-2.js [turbofan] Deopt support for escape analysis 2016-01-05 13:31:02 +00:00
escape-analysis-deopt-3.js [turbofan] Deopt support for escape analysis 2016-01-05 13:31:02 +00:00
escape-analysis-deopt-4.js [turbofan] Deopt support for escape analysis 2016-01-05 13:31:02 +00:00
escape-analysis-deopt-5.js [turbofan] Deopt support for escape analysis 2016-01-05 13:31:02 +00:00
escape-analysis-representation.js
escape-analysis.js
eval-introduced-closure.js
expression-trees.js
for-stmt.js
function-call.js
generic-add.js Fix maybe_string_add for adds that have no type feedback where --always-opt is on. 2015-04-08 13:14:30 +00:00
global-accessors.js
global-delete.js [turbofan] Reland: Optimize loads from the global object in JSTypeFeedbackSpecializer. 2015-04-27 12:15:06 +00:00
global-var-delete.js [turbofan] Reland: Optimize loads from the global object in JSTypeFeedbackSpecializer. 2015-04-27 12:15:06 +00:00
globals.js
increment-typefeedback.js
inline-accessors.js
inline-arguments.js [runtime] Kill %Arguments and %ArgumentsLength. 2016-02-12 12:25:23 +00:00
inline-arity-mismatch.js
inline-closures.js
inline-compare.js
inline-conditional.js
inline-construct.js
inline-context-slots.js
inline-function-apply.js
inline-global-access.js
inline-literals.js
inline-param.js
inline-throw.js
inline-two.js
inlined-call-mapcheck.js %GetOptimizationStatus(): Unconditionally return a sentinel when --always-opt is present 2015-04-14 14:57:48 +00:00
inlined-call.js %GetOptimizationStatus(): Unconditionally return a sentinel when --always-opt is present 2015-04-14 14:57:48 +00:00
lazy-const-lookup.js
lazy-deopt-in-literal.js Fix stack layout of full code arm64 for object literal. 2015-04-27 08:31:33 +00:00
lazy-iife-no-parens.js Parsing especially large nested functions takes up more memory than necessary. 2015-09-10 14:41:14 +00:00
literals-assignment.js
literals-optimized.js
literals.js
load-elimination-global.js
load-elimination-osr.js
load-elimination-params.js
load-elimination.js
logical-and.js
logical-or.js
loopcount.js
loops.js
manual-concurrent-recompile.js
math-floor-global.js
math-floor-local.js
minus-zero.js [intrinsics] Kill the %_IsMinusZero intrinsic. 2016-02-09 06:28:53 +00:00
mul-div-52bit.js [test] Reland test for 52bit multiplication and division. 2015-11-26 06:46:59 +00:00
multiply-add.js
multiply-sub.js
named-load.js [turbofan] Fix reduction of LoadProperty/StoreProperty to LoadNamed/StoreNamed. 2015-04-21 15:12:58 +00:00
named-store.js [turbofan] Fix reduction of LoadProperty/StoreProperty to LoadNamed/StoreNamed. 2015-04-21 15:12:58 +00:00
null-compare.js
objectliterals.js
opt-next-call-turbo.js Enable test coverage for test coverage. 2015-01-21 14:07:19 +00:00
opt-next-call.js Remove overzealous check from %OptimizeFunctionOnNextCall. 2015-01-19 15:52:00 +00:00
optimize_max.js Add mjsunit tests for optimization of float min/max. 2015-06-23 17:26:25 +00:00
optimize_min.js Add mjsunit tests for optimization of float min/max. 2015-06-23 17:26:25 +00:00
optimize-bitnot.js
optimized-closures.js
optimized-for-in.js [compiler] Remove support for concurrent OSR. 2016-03-08 09:02:44 +00:00
optimized-function-calls.js
osr-alignment.js Reduce the number of iterations in some OSR tests by using an explicit %OptimizeOsr(). 2015-02-10 09:53:22 +00:00
osr-array-len.js [turbofan] Support vector IC feedback in the JSTypeFeedbackTable. 2015-05-19 08:58:29 +00:00
osr-assert.js
osr-backedges1.js [turbofan] Use heavy-handed graph duplication to do loop peeling for OSR. 2015-02-11 13:26:45 +00:00
osr-big.js
osr-block-scope-func.js [turbofan] Simplify context specialization and fix for OSR. 2015-02-19 11:36:50 +00:00
osr-block-scope-id.js [turbofan] Rename context stack as part of the environment for OSR. 2015-02-17 18:10:11 +00:00
osr-block-scope.js [turbofan] Simplify context specialization and fix for OSR. 2015-02-19 11:36:50 +00:00
osr-follow.js [turbofan] Fix usage of ThisFunction parameter in OSR. 2015-01-30 13:09:44 +00:00
osr-for-let.js [turbofan] Simplify context specialization and fix for OSR. 2015-02-19 11:36:50 +00:00
osr-forin-nested.js [turbofan] Fix --turbo-osr for OSRing into inner loop inside for-in. 2015-03-10 09:27:40 +00:00
osr-forin.js Speed up tests for OSR of for-in and for-of loops. 2015-02-02 11:52:07 +00:00
osr-forof.js Speed up tests for OSR of for-in and for-of loops. 2015-02-02 11:52:07 +00:00
osr-function-id2.js [turbofan] Fix usage of ThisFunction parameter in OSR. 2015-01-30 13:09:44 +00:00
osr-function-id.js [turbofan] Fix usage of ThisFunction parameter in OSR. 2015-01-30 13:09:44 +00:00
osr-function.js [turbofan] Fix usage of ThisFunction parameter in OSR. 2015-01-30 13:09:44 +00:00
osr-infinite.js [turbofan] Fix bug in OSR deconstruction. 2015-03-17 17:55:29 +00:00
osr-labeled.js [turbofan] Fix bug in OSR deconstruction. 2015-03-17 17:55:29 +00:00
osr-literals-adapted.js [turbofan] Fix loading of JSFunction from activation in case of adapter frame. 2015-03-25 17:46:16 +00:00
osr-literals.js [turbofan] Fix loading of JSFunction from activation in case of adapter frame. 2015-03-25 17:46:16 +00:00
osr-manual1.js Make it easier to test OSR with %OptimizeOsr() runtime call. 2015-02-09 12:47:43 +00:00
osr-manual2.js Make it easier to test OSR with %OptimizeOsr() runtime call. 2015-02-09 12:47:43 +00:00
osr-maze1.js [mjsunit] Remove unsupported flag --turbo-deoptimization from tests. 2015-06-15 09:43:11 +00:00
osr-maze2.js [mjsunit] Remove unsupported flag --turbo-deoptimization from tests. 2015-06-15 09:43:11 +00:00
osr-multiple2.js [turbofan] Implement OSR for outer loops. 2015-01-12 11:39:58 +00:00
osr-multiple3.js [turbofan] Implement OSR for outer loops. 2015-01-12 11:39:58 +00:00
osr-multiple.js [turbofan] Implement OSR for outer loops. 2015-01-12 11:39:58 +00:00
osr-nested2.js [turbofan] Use heavy-handed graph duplication to do loop peeling for OSR. 2015-02-11 13:26:45 +00:00
osr-nested2b.js [turbofan] Use heavy-handed graph duplication to do loop peeling for OSR. 2015-02-11 13:26:45 +00:00
osr-nested3.js [turbofan] Use heavy-handed graph duplication to do loop peeling for OSR. 2015-02-11 13:26:45 +00:00
osr-nested3b.js [turbofan] Use heavy-handed graph duplication to do loop peeling for OSR. 2015-02-11 13:26:45 +00:00
osr-nested.js
osr-one.js
osr-regex-id.js Make it easier to test OSR with %OptimizeOsr() runtime call. 2015-02-09 12:47:43 +00:00
osr-regress-max-locals.js
osr-sar.js [turbofan] Implement OSR for outer loops. 2015-01-12 11:39:58 +00:00
osr-simple.js Reduce the number of iterations in some OSR tests by using an explicit %OptimizeOsr(). 2015-02-10 09:53:22 +00:00
osr-top1.js Make it easier to test OSR with %OptimizeOsr() runtime call. 2015-02-09 12:47:43 +00:00
osr-top2.js Make it easier to test OSR with %OptimizeOsr() runtime call. 2015-02-09 12:47:43 +00:00
osr-top3.js Make it easier to test OSR with %OptimizeOsr() runtime call. 2015-02-09 12:47:43 +00:00
osr-two.js
osr-uint32.js
osr-warm.js [turbofan] Implement OSR for outer loops. 2015-01-12 11:39:58 +00:00
osr-while-let.js [turbofan] Simplify context specialization and fix for OSR. 2015-02-19 11:36:50 +00:00
osr-with-args.js
phi-representations.js
pic.js
property-calls.js
property-refs.js
property-simple.js
property-static.js
property-stores.js
proto-chain-constant.js
proto-chain-load.js
receiver-conversion.js [turbofan] Fix receiver binding for inlined callees. 2015-10-27 12:13:49 +00:00
recursive-deopt.js
regress-0.js
regress-1.js
regress-2.js
regress-3.js
regress-4.js
regress-5.js
regress-6.js
regress-7.js
regress-8.js
regress-1085.js [builtins] Make Math.max and Math.min fast by default. 2016-01-28 13:07:09 +00:00
regress-1394.js
regress-3786.js [turbofan] Raise max virtual registers and call parameter limit. 2014-12-25 18:18:04 +00:00
regress-3812.js [turbofan] Fix truncation/representation sloppiness wrt. bool/bit. 2015-01-14 12:06:56 +00:00
regress-4206.js [arm64][turbofan] Fix implementation of Float64Min. 2015-06-23 11:58:58 +00:00
regress-4207.js [turbofan] NaN is never truish. 2015-06-23 12:24:54 +00:00
regress-4389-1.js [crankshaft] DCE must not eliminate (observable) math operations. 2015-08-25 06:24:55 +00:00
regress-4389-2.js [crankshaft] DCE must not eliminate (observable) math operations. 2015-08-25 06:24:55 +00:00
regress-4389-3.js [crankshaft] DCE must not eliminate (observable) math operations. 2015-08-25 06:24:55 +00:00
regress-4389-4.js [crankshaft] DCE must not eliminate (observable) math operations. 2015-08-25 06:24:55 +00:00
regress-4389-5.js [crankshaft] DCE must not eliminate (observable) math operations. 2015-08-25 06:24:55 +00:00
regress-4389-6.js [crankshaft] DCE must not eliminate (observable) math operations. 2015-08-25 06:24:55 +00:00
regress-4413-1.js [builtins] Make sure argument count is always valid for C++ builtins. 2015-10-06 08:23:51 +00:00
regress-4470-1.js [turbofan] Add test case for stores to properties that are also present on prototype. 2015-10-23 12:09:54 +00:00
regress-106351.js
regress-177883.js
regress-411262.js
regress-416359.js [turbofan] Add missing deopt for the assignment in the for-in statement. 2015-01-28 16:16:24 +00:00
regress-439743.js [x64] Fix optimization for certain checked load/stores. 2014-12-10 07:49:12 +00:00
regress-443744.js [turbofan] Fix unsafe out-of-bounds check for checked loads/stores. 2014-12-19 12:53:29 +00:00
regress-444508.js [turbofan] Correctify lowering of Uint8ClampedArray buffer access. 2014-12-22 08:27:59 +00:00
regress-444695.js [turbofan] Fix missing ChangeUint32ToUint64 in lowering of LoadBuffer. 2014-12-23 06:54:00 +00:00
regress-445267.js [turbofan] Fix invalid bounds check with overflowing offset. 2014-12-29 10:01:15 +00:00
regress-445732.js Fix %NeverOptimizeFunction() intrinsic. 2015-01-02 08:18:01 +00:00
regress-445858.js [x64] Rearrange code for OOB integer loads. 2015-01-02 10:15:40 +00:00
regress-445859.js [turbofan] Truncation of Bit/Word8/16 to Word32 is a no-op. 2015-01-02 10:39:10 +00:00
regress-445876.js Make control reducer revisit newly introduced merges. 2015-01-05 16:35:34 +00:00
regress-445907.js [mjsunit] Remove unsupported flag --turbo-deoptimization from tests. 2015-06-15 09:43:11 +00:00
regress-446156.js Revert of [es6] Correctify and unify ArrayBuffer and SharedArrayBuffer constructors. (patchset #2 id:20001 of https://codereview.chromium.org/1500543002/ ) 2015-12-04 10:38:48 +00:00
regress-446647.js [mjsunit] Remove unsupported flag --turbo-deoptimization from tests. 2015-06-15 09:43:11 +00:00
regress-446778.js Restrict representation inference to avoid truncation of phi inputs. 2015-01-07 11:38:54 +00:00
regress-447567.js Fix Object.preventExtensions, .seal, .freeze on typed arrays 2015-10-26 11:08:02 +00:00
regress-451012.js [turbofan] Handle cyclic dependencies in context typing. 2015-01-27 06:57:41 +00:00
regress-452427.js [turbofan] Only replace nodes eagerly during simplified lowering if the types stay the same. 2015-01-27 09:27:37 +00:00
regress-463056.js [turbofan] Fix deferred replacement in simplified lowering. 2015-03-02 12:49:49 +00:00
regress-468162.js [turbofan] Fix lowering of Math.max for integral inputs. 2015-03-20 12:05:19 +00:00
regress-468727.js [turbofan] Remember types for deoptimization during simplified lowering. 2015-03-19 14:00:33 +00:00
regress-469089.js [turbofan] Work-around untagged result of CompareIC in pointer maps. 2015-03-20 09:45:12 +00:00
regress-491578.js [turbofan] Properly kill Terminate nodes when removing loops. 2015-05-26 10:48:07 +00:00
regress-572409.js [turbofan] Add deopt point for InternalSetPrototype in VisitObjectLiteral. 2016-01-04 09:54:51 +00:00
regress-3136962.js
regress-3185901.js
regress-3218915.js
regress-3249650.js
regress-3260426.js
regress-arguments.js
regress-arrayliteral.js
regress-bit-number-constant.js [turbofan] Fix truncation/representation sloppiness wrt. bool/bit. 2015-01-14 12:06:56 +00:00
regress-closures-with-eval.js
regress-const.js Remove support for legacy const, part 1 2016-03-22 17:52:13 +00:00
regress-crbug-540593.js [turbofan] Don't try to inline non-inlineable functions. 2015-10-07 11:43:39 +00:00
regress-dead-throw-inlining.js [turbofan] Reducers should revisit end after merging to it. 2016-02-05 11:01:44 +00:00
regress-deopt-call-as-function.js
regress-f64-w32-change.js [turbofan] Only infer signedness for Float64->Word32 representation change from the input type. 2015-11-18 10:02:33 +00:00
regress-funarguments.js
regress-funcaller.js
regress-gap.js
regress-gvn.js %GetOptimizationStatus(): Unconditionally return a sentinel when --always-opt is present 2015-04-14 14:57:48 +00:00
regress-inline-callfunctionstub.js
regress-int32array-outofbounds-nan.js [turbofan] Quickfix for invalid number truncation of typed array loads. 2014-12-12 10:45:38 +00:00
regress-intoverflow.js
regress-lazy-deopt.js [runtime] Remove the very dangerous %_CallFunction intrinsic. 2015-11-05 11:48:21 +00:00
regress-lbranch-double.js
regress-loadfield.js
regress-loop-deopt.js
regress-max.js [builtins] Make Math.max and Math.min fast by default. 2016-01-28 13:07:09 +00:00
regress-ntl-effect.js Do not reduce effect phis for loops. 2015-01-03 12:46:00 +00:00
regress-or.js
regress-register-allocator2.js
regress-register-allocator3.js
regress-register-allocator.js
regress-rep-change.js
regress-serialized-slots.js
regress-shared-deopt.js
regress-shift-left.js [turbofan] Right hand side of shifts needs ToUint32. 2015-07-03 11:42:00 +00:00
regress-shift-right-logical.js [turbofan] Right hand side of shifts needs ToUint32. 2015-07-03 11:42:00 +00:00
regress-shift-right.js [turbofan] Right hand side of shifts needs ToUint32. 2015-07-03 11:42:00 +00:00
regress-stacktrace-methods.js
regress-stacktrace.js Port CallSite methods to C++. 2015-04-28 08:52:47 +00:00
regress-to-number-binop-deopt.js [turbofan] Avoid ToNumber conversions if they could deoptimize. 2015-02-16 12:59:20 +00:00
regress-toint32.js
regress-uint8-deopt.js [mjsunit] Remove unsupported flag --turbo-deoptimization from tests. 2015-06-15 09:43:11 +00:00
regress-valueof.js
regress-variable-liveness-let.js [turbofan] Fix liveness analysis for let variable in TDZ. 2015-10-21 12:23:06 +00:00
regress-variable-liveness.js [turbofan] Fix variable liveness control structure creation. 2015-05-21 09:57:11 +00:00
rotate.js
safepoint.js
shift-shr.js
short-circuit.js
simple-bailouts.js
simple-binary-op.js
simple-deopt.js
simple-global-access.js
simple-inlining.js
smi-stores-opt.js
store-elimination.js
strict-recompile.js
string-length.js [turbofan] Optimize string "length" property access based on types. 2015-07-13 06:02:22 +00:00
switch-bailout.js
symbol-protototype.js [turbofan] We can inline property access for all primitives. 2015-11-03 10:44:57 +00:00
this-property-refs.js
thisfunction.js
to-fast-properties.js
truncating-store-deopt.js [turbofan] Support lazy deopt for truncating store to a typed array. 2015-03-19 05:46:30 +00:00
truncating-store.js [turbofan] Insert appropriate conversions for typed array stores. 2014-11-25 08:40:29 +00:00
try-binop.js [turbofan] Fix throwing conversion inserted by JSTypedLowering. 2015-06-12 04:42:14 +00:00
try-catch-deopt.js [turbofan] Unwind and jump to the catch handler in the deoptimizer. 2016-02-12 10:15:32 +00:00
try-context.js Add test for exception handler context switch. 2016-02-09 12:31:45 +00:00
try-deopt.js [mjsunit] Remove unsupported flag --turbo-deoptimization from tests. 2015-06-15 09:43:11 +00:00
try-finally-deopt.js Tests for deopt from finally block. 2016-02-12 12:17:36 +00:00
try-osr.js [turbofan] Add mjsunit tests for try-catch-finally and OSR. 2015-06-09 08:16:41 +00:00
type-feedback-after-throw.js
uint32.js Treat HArgumentsObject as a safe use during Uint32 analysis phase. 2015-04-13 10:47:15 +00:00
unary-add.js
variables.js