Reason for revert:
might break stuff
Original issue's description:
> [test] Refactoring - Use subject/observer pattern for progress indicators.
>
> This should prevent bugs caused by missing super calls in
> overridden methods. The assumption is that methods of
> different indicators are independent.
>
> Committed: https://crrev.com/fbe973ff1722a6158a5b2babce9c1a32d26a1d3b
> Cr-Commit-Position: refs/heads/master@{#28866}
TBR=jkummerow@chromium.org,tandrii@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1163373005
Cr-Commit-Position: refs/heads/master@{#28869}
Improves code size of generated regexp in TestSizeOfRegExpCode test by 33%.
Execution time of the same test improved by ~10%.
Utilizing code range for mips64 enable us to use J/JAL
instructions for long branches.
TEST=cctest/test-heap/TestSizeOfRegExpCode
BUG=
Review URL: https://codereview.chromium.org/1147503002
Cr-Commit-Position: refs/heads/master@{#28867}
This should prevent bugs caused by missing super calls in
overridden methods. The assumption is that methods of
different indicators are independent.
Review URL: https://codereview.chromium.org/1171943002
Cr-Commit-Position: refs/heads/master@{#28866}
This prepares for properly rerunning tests. Currently when
tests are rerun, the same test object is reused. This
will be changed in a follow up.
Review URL: https://codereview.chromium.org/1168303007
Cr-Commit-Position: refs/heads/master@{#28864}
Use the new TranslatedState and friends, which work at a higher level
than the TranslationIterator, which will make it easier to change the
deoptimization commands in subsequent CLs.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/1166353004
Cr-Commit-Position: refs/heads/master@{#28862}
crrev.com/1016603004 should have fixed the issues that broke this last time.
Notes:
- The current functionality is meant to stay. If you prefer the old way,
just set v8_use_external_startup_data=0.
- You might notice this if you call d8 via PATH. Either explicitly tell d8
where your external snapshot/built-ins are, or change the build options
as above.
- This follows Chromium practice, that mostly uses this feature these days.
- Other platforms to follow later.
BUG=
Review URL: https://codereview.chromium.org/1041683002
Cr-Commit-Position: refs/heads/master@{#28858}
This was already public in a non-component build. This means that targets
dependent on the "v8" target can take the results of the snapshot as inputs.
This also renames the component mode checking from keying off of the
component_mode string to checking the is_component_build flag, which is now the
recommended way to do this check.
Review URL: https://codereview.chromium.org/1167223002
Cr-Commit-Position: refs/heads/master@{#28856}
This adds some basic tests of the interaction between try-catch and
try-finally statements and OSR in TurboFan. The try-osr test suite
follows the structure of try-deopt closely.
R=titzer@chromium.org
TEST=mjsunit/compiler/try-osr
Review URL: https://codereview.chromium.org/1165103003
Cr-Commit-Position: refs/heads/master@{#28855}
This allows try-catch and try-finally constructs to be separately
enabled and disabled. We plan to stage try-catch support soon.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/1157863015
Cr-Commit-Position: refs/heads/master@{#28848}
These values were computed by the parser and hence out of sync with any
visitor over the AST. Our AST visitor aborts visitation of statement
lists as soon as a jump statement has been reached. Now handler tables
are guaranteed to be dense and fully populated.
R=ishell@chromium.org
TEST=mjsunit/regress/regress-crbug-493290
BUG=chromium:493290
LOG=N
Review URL: https://codereview.chromium.org/1157213004
Cr-Commit-Position: refs/heads/master@{#28846}
Boolean "is_strong" parameters have begun to proliferate across areas where
strong mode semantics are different. This CL repurposes the existing
ObjectStrength enum as a replacement for them.
BUG=v8:3956
LOG=N
Review URL: https://codereview.chromium.org/1144183004
Cr-Commit-Position: refs/heads/master@{#28839}
Both ToName() and HasProperty() can actually throw, so we need to
propagate those exceptions properly.
BUG=chromium:496331
LOG=y
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/1162833006
Cr-Commit-Position: refs/heads/master@{#28829}
This unifies methods Deoptimizer::DoTranslateCommand, Deotpimizer::DoTranslateObject and the arguments object materializer.
To unify these, we have to separate reading of the input frame from writing to the output frame because the argument materializer does not write to output frames.
Instead, we now deoptimize in following stages:
1. Read out the input frame/registers, decode them using the translations from the deoptimizer and store them in the deoptimizer (Deoptimizer::translated_state_). This is done in TranslatedState::Init.
2. Write out into the output frame buffer all the values that do not require allocation. We also remember references to the values that require materialization. As before, this is done in Deoptimizer::DoCompute*Frame method, but instead calling to DoTranslateCommand, we use the translated frame to obtain the values and write them to the output frames.
3. The platform specific code then sets up the output frames and calls into the deoptimization notification. This has not been changed at all.
4. Once the stack is setup, we handlify all the references in the saved translated values (TranslatedState::Prepare).
5. Finally, we materialize all the values we remembered in step (1) and write them to their frames on the stack (using the TranslatedValue::GetValue method).
BUG=
Review URL: https://codereview.chromium.org/1136223004
Cr-Commit-Position: refs/heads/master@{#28826}
This adds handling of JSLoadDynamicContext nodes to JSTypedLowering to
perform extension checks and an inline fast path. The fast path is a
context slot load targeting a specific context.
R=bmeurer@chromium.org
BUG=v8:4131
LOG=N
Review URL: https://codereview.chromium.org/1155543003
Cr-Commit-Position: refs/heads/master@{#28823}