v8/test/cctest/compiler
jarin c83b21ab75 [turbofan] Insert dummy values when changing from None type.
Currently we choose the MachineRepresentation::kNone representation for
values of Type::None, and when converting values from the kNone representation
we use "impossible" conversions that will crash at runtime. This
assumes that the impossible conversions should never be hit (the only
way to produce the impossible values is to perform an always-failing
runtime check on a value, such as Smi-checking a string). Note that
this assumes that the runtime check is executed before the impossible
convesrion.

Introducing BitwiseOr type feedback broke this in two ways:

- we always pick Word32 representation for bitwise-or, so the
  impossible conversion does not trigger (it only triggers with
  None representation), and we could end up with unsupported
  conversions from Word32.

- even if we inserted impossible conversions, they are pure conversions.
  Since untagging, bitwise-or operations are also pure, we could hoist
  all these before the smi check of the inputs and we could hit the
  impossible conversions before we get to the smi check.

This CL addresses this by just providing dummy values for conversions
from the Type::None type. It also removes the impossible-to-* conversions.

BUG=chromium:638132

Review-Url: https://codereview.chromium.org/2266823002
Cr-Commit-Position: refs/heads/master@{#38883}
2016-08-25 06:06:58 +00:00
..
c-signature.h [wasm] Replace the BufferedRawMachineAssemblerTester in the WasmRunner. 2016-02-18 09:55:49 +00:00
call-tester.h PPC64: [simulator] Do not sign-extend uint32_t call parameters. 2016-04-25 14:03:58 +00:00
code-assembler-tester.h [compiler] Remove compiler internals from CodeAssembler. 2016-08-12 12:57:48 +00:00
codegen-tester.cc x87: fix the use of CheckFloatEq and CheckDoubleEq in test. 2016-03-07 12:30:23 +00:00
codegen-tester.h Include only stuff you need, part 4: ast, scopes + fallout. 2016-08-23 12:35:36 +00:00
function-tester.h Include only stuff you need, part 4: ast, scopes + fallout. 2016-08-23 12:35:36 +00:00
graph-builder-tester.h Include only stuff you need, part 4: ast, scopes + fallout. 2016-08-23 12:35:36 +00:00
test-basic-block-profiler.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
test-branch-combine.cc [arm64] Generate adds/ands. 2016-06-29 14:57:49 +00:00
test-code-assembler.cc [compiler] Remove compiler internals from CodeAssembler. 2016-08-12 12:57:48 +00:00
test-gap-resolver.cc [Turbofan] Revert FP register aliasing support on Arm. 2016-07-29 00:50:57 +00:00
test-graph-visualizer.cc [tubofan] Remove .dot output of --trace-turbo 2015-12-11 16:58:31 +00:00
test-instruction.cc Expose a lower bound of malloc'd memory via heap statistics 2016-04-01 10:01:56 +00:00
test-js-constant-cache.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-js-context-specialization.cc Reland of place all remaining Oddball checks with new function (patchset #1 id:1 of https://codereview.chromium.org/2060213002/ ) 2016-06-14 10:09:38 +00:00
test-js-typed-lowering.cc [turbofan] Simplify BinaryOperationHints and CompareOperationHints. 2016-08-09 18:12:08 +00:00
test-jump-threading.cc Expose a lower bound of malloc'd memory via heap statistics 2016-04-01 10:01:56 +00:00
test-linkage.cc Cleanup: Move ParseInfo to a separate file. 2016-08-22 11:33:58 +00:00
test-loop-analysis.cc Expose a lower bound of malloc'd memory via heap statistics 2016-04-01 10:01:56 +00:00
test-loop-assignment-analysis.cc Cleanup: Move ParseInfo to a separate file. 2016-08-22 11:33:58 +00:00
test-machine-operator-reducer.cc [turbofan] Lower "-0.0 - x" in the MachineOperatorReducer. 2016-08-08 08:40:36 +00:00
test-multiple-return.cc [turbofan] Add MachineType to LinkageLocation 2016-07-11 10:39:34 +00:00
test-node.cc [stubs] Call interface descriptors cleanup. 2016-07-26 14:56:35 +00:00
test-operator.cc Replace SmartArrayPointer<T> with unique_ptr<T[]> 2016-07-25 10:27:47 +00:00
test-osr.cc [turbolizer] Visualize also the dead nodes. 2016-08-09 16:20:32 +00:00
test-representation-change.cc [turbofan] Insert dummy values when changing from None type. 2016-08-25 06:06:58 +00:00
test-run-bytecode-graph-builder.cc Cleanup: Move ParseInfo to a separate file. 2016-08-22 11:33:58 +00:00
test-run-calls-to-external-references.cc [wasm] Use a C wrapper function to calculate F64Pow. 2016-07-20 14:27:06 +00:00
test-run-deopt.cc [turbofan] Enable tests for throwing into deopted code. 2016-02-12 10:50:17 +00:00
test-run-inlining.cc [turbofan] Switch inlining tests to global scope. 2016-08-01 12:59:58 +00:00
test-run-intrinsics.cc [intrinsic] Drop the %_ValueOf intrinsic. 2016-07-05 10:05:40 +00:00
test-run-jsbranches.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-run-jscalls.cc Adjust whitespace to make tests oblivious to --harmony-function-tostring 2016-07-22 00:18:41 +00:00
test-run-jsexceptions.cc [turbofan] Deprecate --turbo-try-finally flag. 2016-02-05 15:20:44 +00:00
test-run-jsobjects.cc Add GetProperty/GetElement to JSReceiver and use it where possible 2016-03-08 17:30:42 +00:00
test-run-jsops.cc Remove runtime flags for sloppy mode block scoping features 2016-04-08 00:30:20 +00:00
test-run-load-store.cc Implement UnaligedLoad and UnaligedStore turbofan operators. 2016-07-22 20:56:24 +00:00
test-run-machops.cc [turbofan] Add Float32(Max|Min) machine operators. 2016-08-22 13:50:51 +00:00
test-run-native-calls.cc [Turbofan] Revert FP register aliasing support on Arm. 2016-07-29 00:50:57 +00:00
test-run-stackcheck.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-run-stubs.cc Pass debug name as Vector instead of const char* 2016-04-26 14:37:05 +00:00
test-run-unwinding-info.cc Emit unwinding information for TurboFan code. 2016-07-15 15:05:56 +00:00
test-run-variables.cc Remove support for legacy const, part 1 2016-03-22 17:52:13 +00:00
test-run-wasm-machops.cc Add new relocation type WASM_MEMORY_SIZE_REFERENCE, use relocatable pointers to update wasm memory size references in generated code. 2016-05-04 20:20:50 +00:00
test-simplified-lowering.cc [turbofan] Remove unused Type parameter from ReferenceEqual. 2016-08-08 16:34:28 +00:00
value-helper.h [turbofan] Add Float32(Max|Min) machine operators. 2016-08-22 13:50:51 +00:00