Commit Graph

27318 Commits

Author SHA1 Message Date
mbrandy
332a09fdf5 PPC: Refine "Make whether or not a Code object should be created by masm explicit"
R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32426}
2015-12-01 00:04:10 +00:00
mbrandy
81b4015ebf PPC: [interpreter] Switch passing of new.target to register.
Port 3d004eeab2

Original commit message:
    This passes the new.target value in a register instead of through a
    side-channel via the construct stub. The interpreter entry trampoline
    stores this value in a bytecode register so that it can be accessed
    directly by the interpreter. The size of the interpreter stack frame
    hence grows by one slot.

R=mstarzinger@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=v8:4544
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#32425}
2015-11-30 23:32:32 +00:00
bradnelson
a63023206f Passing zone to type objects so printing macros work in arm debug mode.
The Type::Print method requires an explict zone, even for basic types
on arm debug.

This change introduced debug mode printing when types don't match:
https://codereview.chromium.org/1471073003/

Adding the zone parameter to make the arm build go green.

BUG= https://code.google.com/p/v8/issues/detail?id=4203
TEST=local arm build
TBR=bbudge@chromium.org,titzer@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#32424}
2015-11-30 22:48:46 +00:00
mbrandy
78026a4b1d PPC: [turbofan] Implemented the optional Float32RoundUp operator.
R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32423}
2015-11-30 22:35:04 +00:00
mbrandy
e53f736dd6 PPC: [turbofan] Fewer gap moves for tail calls
Port 51e992f147

Original commit message:
    Restore frame pointer directly from stack rather than copying it and
    restoring. Also restore return address register directly on platforms that
    support it.

R=danno@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=v8:4076
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#32422}
2015-11-30 22:33:32 +00:00
mbrandy
813ad56d4a PPC: [turbofan] Implemented the optional Float32RoundDown operator.
R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32421}
2015-11-30 22:09:38 +00:00
mbrandy
19f3315998 PPC: [turbofan] Add general support for sp-based frame access
Port 5166987369

Original commit message:
    Some highlights of this CL:
    * Refactor the mutable state out of Frame into FrameAccessState,
      which is maintained and updated during code generation to
      record whether sp- or fp-based frame access is currently active
      and how deep the stack on top of the frame is.
    * The operand resultion in linkage.cc now uses FrameAccessState
      to determine how to generate frame-accessing operands.
    * Update all platforms to accurately track additionally pushed
      stack slots (e.g. arguments for calls) in the FrameAccessState.
    * Add a flag, --turbo_sp_frame_access, which forces all frame
      access to be sp-based whenever possible. This will likely never
      be used in production, but for testing it's useful in verifying
      that the stack-tracking of each platform maintained in the
      FrameAccessState is correct.
    * Use sp-based frame access for gap resolving before tail
      calls. This will allow for slightly more efficient restoration
      of the frame pointer in the tail call in a later CL.
    * Remove most ad hoc groping into CallDescriptors to
      determine if a frame is needed, instead consistently use
      predicates like needs_frame(), IsCFunctionCall() and
      IsJSFunctionCall().

R=danno@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=v8:4076
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#32420}
2015-11-30 22:08:47 +00:00
bradnelson
cf5546baad Make typing-asm match spec more closely around load/store, add more tests.
Shifts of integer values are in some contexts collapsed by the parser into single literal AST nodes, rather than a direct representation of the parse tree. Confirming this behavior in tests.

Integer TypedArrays are assumed to load and store "intish" values rather than more fine-grained type information. Reducing the precision of the typing information to match the spec and simplify the wasm generator.

The asm spec requires load and store values of various "float?", "floatish", "double?" and "intish" types to ensure undefined values are not visible and that float32 rounding occurs at the right time. More closely matching this.

Adding additional testing around unsigned / signed comparisons, loads and stores.

Adding addition debug mode printing when asserting about types fail.

BUG= https://code.google.com/p/v8/issues/detail?id=4203
TEST=test-asm-validator, wasm side tests
R=titzer@chromium.org,aseemgarg@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#32419}
2015-11-30 21:11:47 +00:00
alan.li
000baddfd3 MIPS: Improve Cvt_d_uw on mips32.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32418}
2015-11-30 21:00:04 +00:00
alan.li
cfd9beeced MIPS: Adding simulator support for AUI/DAUI/DAHI/DATI.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32417}
2015-11-30 20:30:23 +00:00
mstarzinger
44d4131c72 Revert of [heap] Aggressive code flushing in GC stress mode. (patchset #1 id:1 of https://codereview.chromium.org/1483993002/ )
Reason for revert:
This breaks (surprise) GC stress with custom snapshot, cannot reproduce, will need to investigate further.

https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/2909/steps/Mjsunit/logs/deopt-inlined-from-call

Original issue's description:
> [heap] Aggressive code flushing in GC stress mode.
>
> This disregards the code age heuristic when deciding whether to flush
> code so that GC stress mode is more likely to flush out potential races
> between our various "invariants".
>
> R=hpayer@chromium.org
>
> Committed: https://crrev.com/28a3f23e50f1847dd1152e6bb4aa0579acbdaaab
> Cr-Commit-Position: refs/heads/master@{#32414}

TBR=hpayer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#32416}
2015-11-30 19:10:27 +00:00
danno
0541b2ee7d [turbofan] Use macros for sp manipulation during tail call on arm64
BUG=v8:4076
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#32415}
2015-11-30 17:54:10 +00:00
mstarzinger
28a3f23e50 [heap] Aggressive code flushing in GC stress mode.
This disregards the code age heuristic when deciding whether to flush
code so that GC stress mode is more likely to flush out potential races
between our various "invariants".

R=hpayer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#32414}
2015-11-30 17:24:21 +00:00
thechargingvolcano
c0ec16e559 [tools] gen-postmortem-metadata: use strip instead of lstrip + rstrip
In Python, `strip` can be used directly instead of stripping the ends
one by one.

R=machenbach@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#32413}
2015-11-30 17:07:56 +00:00
mstarzinger
252bb3a8a0 [heap] JSFunction::context always points to valid context.
This removes an overly complex predicate from the IsFlushable check
within the marking visitor. By now all JSFunction objects reference a
valid Context object, also builtin functions can be recognized without
looking at the JSFunction object.

R=hpayer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#32412}
2015-11-30 17:07:06 +00:00
oth
b0cf04535e [turbofan]: No tabs in tokens in JSON graph files (ECMA404 compliance).
BUG=
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#32411}
2015-11-30 16:43:57 +00:00
danno
51e992f147 [turbofan] Fewer gap moves for tail calls
Restore frame pointer directly from stack rather than copying it and
restoring. Also restore return address register directly on platforms that
support it.

BUG=v8:4076
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#32410}
2015-11-30 14:42:15 +00:00
hablich
802c036ad5 [Release] Update URL to point to the new V8 wiki
R=machenbach@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#32409}
2015-11-30 13:55:13 +00:00
mythria
b587aa2bc7 [Interpreter] Add support for cast operators to bytecode graph builder and
an optomization to remove redundant cast operations.

1. Adds an optimization to remove redundant ToBoolean and ToName operations.
2. Adds implementation and tests for cast operatorts to bytecode graph builder.

BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#32408}
2015-11-30 13:50:20 +00:00
bmeurer
9e6448813d [runtime] Use "the hole" instead of smi 0 as sentinel for context extension.
This way we avoid the %_IsSmi magic that is required in TurboFan to
(efficiently) check abitrary context slots for smi 0. Checking against
"the hole" is common in the AstGraphBuilder and "the hole" is also used
to mark other context slots as not initialized.

R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#32407}
2015-11-30 13:23:28 +00:00
hpayer
da56525478 Revert of Do not remove write barriers for stores of old space references in most recent old space allocation. (patchset #1 id:1 of https://codereview.chromium.org/1478113002/ )
Reason for revert:
Broken canary. Trying to find out root cause.

Original issue's description:
> Do not remove write barriers for stores of old space references in most recent old space allocation.
>
> BUG=chromium:561449
> LOG=n
>
> Committed: https://crrev.com/369778ec55a63ebe51e8fa8497edb5b681069b9b
> Cr-Commit-Position: refs/heads/master@{#32368}

TBR=ulan@chromium.org,bmeurer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:561449

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

Cr-Commit-Position: refs/heads/master@{#32406}
2015-11-30 13:07:13 +00:00
hpayer
cdb4b8fba1 Revert of Tenure transition array. (patchset #1 id:1 of https://codereview.chromium.org/1472363007/ )
Reason for revert:
Broken canary. Trying to find out root cause.

Original issue's description:
> Tenure transition array.
>
> BUG=
>
> Committed: https://crrev.com/c88d7cd1e09d921e8a9a2930cfe6f2dfbea3dc90
> Cr-Commit-Position: refs/heads/master@{#32378}

TBR=ulan@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:563378

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

Cr-Commit-Position: refs/heads/master@{#32405}
2015-11-30 13:05:43 +00:00
hpayer
38bf70b9cd Revert of Introduce instance type for transition arrays. (patchset #6 id:100001 of https://codereview.chromium.org/1480873003/ )
Reason for revert:
Broken canary. Trying to find out root cause.

Original issue's description:
> Introduce instance type for transition arrays.
>
> The motivation is to allow specialized marking visitor for transition arrays and collect all transition array in a list for post-processing in ClearNonLiveReferences.
>
> BUG=chromium:554488
> LOG=NO
>
> Committed: https://crrev.com/026095a3c7932573e1810b8064ec3008ed696601
> Cr-Commit-Position: refs/heads/master@{#32396}

TBR=mlippautz@chromium.org,jkummerow@chromium.org,ulan@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:554488

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

Cr-Commit-Position: refs/heads/master@{#32404}
2015-11-30 13:04:14 +00:00
mstarzinger
269ff36d9f Deprecate unused RelocInfo::CONSTRUCT_CALL mode.
R=bmeurer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#32403}
2015-11-30 12:39:34 +00:00
neis
7079e66982 Use HType::JSReceiver instead of HType::JSObject in some places.
R=bmeurer@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32402}
2015-11-30 12:23:26 +00:00
neis
9334308a12 Rename %_IsSpecObject to %_IsJSReceiver.
This depends on issue 1476403004.

R=bmeurer@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32401}
2015-11-30 11:56:45 +00:00
vogelheim
d3ba9afee2 Move RMA::Label out of the class, so it can be forward declared.
R=bmeurer@chromium.org, mstarzinger@chromium.org
BUG=chromium:508898
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#32400}
2015-11-30 11:29:23 +00:00
mythria
c11e7bc219 [Interpreter] Adds support for throw to bytecode graph builder.
Adds support and tests for throw to bytecode graph builder.

BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#32399}
2015-11-30 11:14:40 +00:00
neis
0c7bc1cd5f Remove Object::IsSpecObject, use Object::IsJSReceiver instead.
R=bmeurer@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32398}
2015-11-30 10:52:11 +00:00
mstarzinger
b1578a15ab Use new.target in favor of %_IsConstructCall intrinsic (1).
This switches several builtin methods to use the ES6 new.target value
when determined whether being called as a constructor or not. This is
prepatory work for fully deprecating the aforementioned intrinsic.

R=rossberg@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#32397}
2015-11-30 10:48:32 +00:00
ulan
026095a3c7 Introduce instance type for transition arrays.
The motivation is to allow specialized marking visitor for transition arrays and collect all transition array in a list for post-processing in ClearNonLiveReferences.

BUG=chromium:554488
LOG=NO

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

Cr-Commit-Position: refs/heads/master@{#32396}
2015-11-30 10:35:57 +00:00
neis
b7995d4bb4 Rename IS_SPEC_OBJECT to IS_JS_RECEIVER in hydrogen.
R=bmeurer@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32395}
2015-11-30 10:22:41 +00:00
neis
39296e679f [proxies] Use IsRevoked where possible, remove has_handler.
R=jkummerow@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32394}
2015-11-30 09:59:55 +00:00
neis
18ee425cb4 Remove {FIRST,LAST}_SPEC_OBJECT_TYPE.
Use {FIRST,LAST}_JS_RECEIVER_TYPE instead.

R=bmeurer@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32393}
2015-11-30 09:50:03 +00:00
jarin
ebed36ee4a [turbofan] Checking monotonicity of representation inference outputs and inputs.
Monotonicity is not required at the current setup, where we do backward pass through
the graph.  However, for bidirectinal analysis, we'd better be sure that all the
input/use information is monotone.

The checker here is quite strict - it requires monotonicity in each of: use
representations, use truncation, output representation and output type. In future, we can
lower the requirements and use lexicographic ordering (e.g., on use truncation and
representation).

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

Cr-Commit-Position: refs/heads/master@{#32392}
2015-11-30 09:22:41 +00:00
jkummerow
2ba464e11c [proxies] [[HasProperty]]: fix trap call.
BUG=v8:1543
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#32391}
2015-11-30 09:21:10 +00:00
bmeurer
f7226a798a [turbofan] Support for typed lowering of "prototype" load from functions.
Add initial support to optimize certain "prototype" loads from known
JSFunctions which have a prototype. This includes an appropriate typing
rule plus a matching rule for typed lowering.

R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#32390}
2015-11-30 08:42:11 +00:00
jochen
7730edcc12 Remove easy to remove calls to Isolate::Current() from api.cc
R=vogelheim@chromium.org
LOG=n
BUG=v8:2487

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

Cr-Commit-Position: refs/heads/master@{#32389}
2015-11-30 08:16:59 +00:00
zhengxing.li
4a54378e57 X87: [Proxies] Support constructable proxy as new.target (reland).
port 7ceaf72708 (r32370)

  original commit message:

BUG=

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

Cr-Commit-Position: refs/heads/master@{#32388}
2015-11-30 04:39:14 +00:00
zhengxing.li
55480ba30e X87: [runtime] Replace global object link with native context link in all contexts.
port 47502a238b (r32381)

  original commit message:
  Previously all contexts had a link to the global object, but what is
  required in most cases (except for the global load, store and delete
  case) is the native context.

  This also removes the second dummy global object that was still linked
  to every native context. We will add a different mechanism to ensure
  that builtins do not pollute the actual global object during
  bootstrapping.

  Drive-by-fix: Unify some MacroAssembler magic and drop obsolete stuff.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#32387}
2015-11-30 04:37:40 +00:00
jkummerow
2fee8a0f1d [proxies] Implement [[Enumerate]] and [[OwnPropertyKeys]]
Both are integrated into JSReceiver::GetKeys().

For now, the implementation ignores Symbol/DONT_ENUM filtering.

BUG=v8:1543
LOG=n

Committed: https://crrev.com/42c6056e6f247724d14dc887f6619a6bf5867a97
Cr-Commit-Position: refs/heads/master@{#32384}

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

Cr-Commit-Position: refs/heads/master@{#32386}
2015-11-28 15:03:13 +00:00
machenbach
97def40dc0 Revert of [proxies] Implement [[Enumerate]] and [[OwnPropertyKeys]] (patchset #3 id:40001 of https://codereview.chromium.org/1474083003/ )
Reason for revert:
[Sheriff] Speculative revert for gc mole:
https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gcmole/builds/5164

Original issue's description:
> [proxies] Implement [[Enumerate]] and [[OwnPropertyKeys]]
>
> Both are integrated into JSReceiver::GetKeys().
>
> For now, the implementation ignores Symbol/DONT_ENUM filtering.
>
> BUG=v8:1543
> LOG=n
>
> Committed: https://crrev.com/42c6056e6f247724d14dc887f6619a6bf5867a97
> Cr-Commit-Position: refs/heads/master@{#32384}

TBR=verwaest@chromium.org,bmeurer@chromium.org,jkummerow@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:1543

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

Cr-Commit-Position: refs/heads/master@{#32385}
2015-11-28 14:16:29 +00:00
jkummerow
42c6056e6f [proxies] Implement [[Enumerate]] and [[OwnPropertyKeys]]
Both are integrated into JSReceiver::GetKeys().

For now, the implementation ignores Symbol/DONT_ENUM filtering.

BUG=v8:1543
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#32384}
2015-11-28 10:48:43 +00:00
akos.palfi
baae7a0333 MIPS64: [turbofan] Implemented the TruncateFloat32ToUint64 TurboFan operator.
Port 68cc0be2ad

Original commit message:
The TruncateFloat32ToUint64 operator converts a float32 to an uint64 using
round-to-zero rounding mode. If the input value is outside uint64 range, then
the result depends on the architecture. I provide an implementation for x64 and
arm64.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#32383}
2015-11-28 02:27:09 +00:00
verwaest
970a7ad758 Fix Reflect.construct wrt proxy, generator, and non-subclass new.target
This makes sure that proxy + Function/Array works
Makes sure that new.target can be a generator
Makes sure that if new.target is not a subclass, but does not have a prototype, that we'll get that same prototype back the next time we look at new.target.prototype.

BUG=v8:1543, v8:3330, v8:3931
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#32382}
2015-11-27 21:44:48 +00:00
bmeurer
47502a238b [runtime] Replace global object link with native context link in all contexts.
Previously all contexts had a link to the global object, but what is
required in most cases (except for the global load, store and delete
case) is the native context.

This also removes the second dummy global object that was still linked
to every native context. We will add a different mechanism to ensure
that builtins do not pollute the actual global object during
bootstrapping.

Drive-by-fix: Unify some MacroAssembler magic and drop obsolete stuff.

CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_nosnap_rel
R=yangguo@chromium.org,mstarzinger@chromium.org

Committed: https://crrev.com/d290f204938295bfecc5c8e645ccfcff6e80ddb8
Cr-Commit-Position: refs/heads/master@{#32375}

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

Cr-Commit-Position: refs/heads/master@{#32381}
2015-11-27 17:00:11 +00:00
jkummerow
f7a0ecb0ca [test+presubmit] Remove duplicate test status file entries
And add a presubmit check to guard against future duplicates.

R=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#32380}
2015-11-27 15:04:49 +00:00
ahaas
68cc0be2ad [turbofan] Implemented the TruncateFloat32ToUint64 TurboFan operator.
The TruncateFloat32ToUint64 operator converts a float32 to an uint64 using
round-to-zero rounding mode. If the input value is outside uint64 range, then
the result depends on the architecture. I provide an implementation for x64 and
arm64.

R=titzer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#32379}
2015-11-27 15:01:51 +00:00
hpayer
c88d7cd1e0 Tenure transition array.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32378}
2015-11-27 14:33:22 +00:00
machenbach
673108d000 Revert of [runtime] Replace global object link with native context link in all contexts. (patchset #3 id:40001 of https://codereview.chromium.org/1480003002/ )
Reason for revert:
[Sheriff] Breaks:
https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap/builds/5472

Original issue's description:
> [runtime] Replace global object link with native context link in all contexts.
>
> Previously all contexts had a link to the global object, but what is
> required in most cases (except for the global load, store and delete
> case) is the native context.
>
> This also removes the second dummy global object that was still linked
> to every native context. We will add a different mechanism to ensure
> that builtins do not pollute the actual global object during
> bootstrapping.
>
> Drive-by-fix: Unify some MacroAssembler magic and drop obsolete stuff.
>
> R=yangguo@chromium.org
>
> Committed: https://crrev.com/d290f204938295bfecc5c8e645ccfcff6e80ddb8
> Cr-Commit-Position: refs/heads/master@{#32375}

TBR=yangguo@chromium.org,mstarzinger@chromium.org,bmeurer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#32377}
2015-11-27 14:30:23 +00:00