jkummerow@chromium.org
a3a5642097
Harden more runtime functions
...
BUG=chromium:372239
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/282493005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 15:30:00 +00:00
yangguo@chromium.org
3ccedf8952
Clean up debugger flags.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/261253005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21270 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 13:47:01 +00:00
yangguo@chromium.org
df296a2be0
Revert "Read internal properties [[PromiseStatus]] and [[PromiseValue]] of the promise."
...
This reverts r21266.
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/273423008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 13:38:39 +00:00
hpayer@chromium.org
2b5ef22d83
Do not scavenge while marking incrementally when FLAG_gc_global is on.
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/281573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 13:35:53 +00:00
m.m.capewell@googlemail.com
d741ee1352
ARM64: Optimize MathRoundI
...
Optimize code generated for MathRoundI based on technique used in MathRoundD.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/276283003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21267 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 13:30:54 +00:00
yangguo@chromium.org
b785aeda44
Read internal properties [[PromiseStatus]] and [[PromiseValue]] of the promise.
...
BUG=v8:3093
LOG=N
R=aandrey@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/273653007
Patch from Alexandra Mikhaylova <amikhaylova@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21266 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 12:42:35 +00:00
jarin@chromium.org
fbe16b09f2
Harden %WeakCollectionSet.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/279863002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21265 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 12:05:00 +00:00
yangguo@chromium.org
cb2bec3b47
Revert "Revert interrupt handling code changed in r21208."
...
This reverts commit r21252.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/284483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21264 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 11:52:44 +00:00
yangguo@chromium.org
17aa453f29
Fix windows x64 build.
...
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/280223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 11:42:53 +00:00
jarin@chromium.org
f5c62871b8
Guard against stack overflow in Runtime::StringReplaceOneCharWithString.
...
Unfortunately, this only triggers with "ulimit -s 1024" (or less), so we
cannot have an mjsunit test. The test that fails is
test/mjsunit/string-replace-one-char.js on x64.debug.
R=ishell@chromium.org
BUG=
Review URL: https://codereview.chromium.org/264383006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21262 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 11:36:47 +00:00
yangguo@chromium.org
078e20a036
Turn off --logfile-per-isolate by default in d8.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/276333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21261 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 11:25:21 +00:00
jarin@chromium.org
c3cd2f0301
Fix %SetFlags("--stress-compaction")
...
BUG=369943
LOG=N
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/261253006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 10:39:08 +00:00
jkummerow@chromium.org
e7a34f3fd9
Harden runtime functions (part 6).
...
Also blacklist LiveEdit-related functions from generated runtime tests.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/279593004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 09:37:26 +00:00
m.m.capewell@googlemail.com
2bdd088cde
ARM: update defaults for flags
...
R=bmeurer@chromium.org , ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/264593002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21258 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 09:25:32 +00:00
mstarzinger@chromium.org
362b203e71
Partially revert r21254 due to WebKit test failure.
...
TBR=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/280523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21257 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 09:18:45 +00:00
adamk@chromium.org
92b895a761
Harden %SetIsObserved with RUNTIME_ASSERTs
...
Now throws if its argument is already observed, or if the argument is
the global proxy.
BUG=371782
LOG=Y
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/274163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21256 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 08:49:51 +00:00
jarin@chromium.org
cbf8c3f460
Make escape analysis preserve all representations required by HCompareNumericAndBranch.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/257803012
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21255 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 08:43:18 +00:00
mstarzinger@chromium.org
38754b4e12
Move more builtin files to strict mode.
...
R=rossberg@chromium.org
BUG=v8:1955
LOG=N
Review URL: https://codereview.chromium.org/279543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21254 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 08:43:01 +00:00
danno@chromium.org
71789ea1e5
Reland r20974: Unify and simplify the FastCloneShallowArrayStub
...
- Don't bake in length/capacity into full codegen calls of stubs,
allowing boilerplates to increase their capacity without regenerating
code.
- Unify all variants of the clone stub into a single,
length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.
R=mvstanton@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=21230
Review URL: https://codereview.chromium.org/272513004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21253 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 07:49:11 +00:00
yangguo@chromium.org
b25513e367
Revert interrupt handling code changed in r21208.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/277233004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21252 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 07:43:47 +00:00
jochen@chromium.org
cf8327994d
Drop unused static microtask API
...
BUG=none
LOG=y
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/261413003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21251 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 07:41:06 +00:00
jochen@chromium.org
988ea995c4
Introduce an api to query the microtask autorun state of an isolate
...
BUG=none
R=adamk@chromium.org , svenpanne@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/264333004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21250 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-12 06:27:38 +00:00
palfia@homejinni.com
c43789b6b6
Revert "MIPS: Reland r20974: Unify and simplify the FastCloneShallowArrayStub."
...
Port r21242 (99bd67aa)
Original commit message:
This breaks nosnap.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/271233003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21247 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 20:18:12 +00:00
adamk@chromium.org
97dd64091b
Clean up hash creation code to use Handle<Smi> where possible
...
Also remove apparently-bogus TODO and reorder arguments in
Object::GetOrCreateHash to put Isolate first (as seems to
be the custom).
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/268063005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21246 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 18:31:08 +00:00
adamk@chromium.org
fb991aafe3
Updated runtime function counts after r21243
...
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/275143002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21245 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 18:28:11 +00:00
adamk@chromium.org
fb70df076b
Object.observe: avoid accessing acceptList properties more than once
...
BUG=v8:3315
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/270763003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21244 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 18:22:28 +00:00
verwaest@chromium.org
03905e4753
Directly create API functions with readonly prototypes rather than converting. Remove FunctionSetReadOnlyPrototype.
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/274463003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21243 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 17:59:15 +00:00
verwaest@chromium.org
c33a72b27f
Revert "Reland r20974: Unify and simplify the FastCloneShallowArrayStub"
...
This breaks nosnap.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/272243002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 17:56:55 +00:00
verwaest@chromium.org
e1c86f8207
Rename NewFunction without prototype to NewFunctionWithoutPrototype
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/270573003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 17:39:54 +00:00
plind44@gmail.com
2429776178
MIPS: Reland and fix r21225 and r21226.
...
Port r21232 (5681b0b)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/275973002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21240 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 17:39:04 +00:00
plind44@gmail.com
a942f4314f
MIPS: Reland r20974: Unify and simplify the FastCloneShallowArrayStub.
...
Port r21230 (56ef3ac)
Original commit message:
- Don't bake in length/capacity into full codegen calls of stubs,
allowing boilerplates to increase their capacity without regenerating
code.
- Unify all variants of the clone stub into a single,
length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/273103002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21239 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 17:29:21 +00:00
verwaest@chromium.org
f55eeec3ee
Always set the class name on installed functions if the target is the JSGlobal
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/261963003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21238 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 17:21:51 +00:00
verwaest@chromium.org
b136448957
Replace NewFunction(MaybeHandle<> prototype by Handle<> prototype
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/264973020
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21237 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 16:59:03 +00:00
verwaest@chromium.org
eb3c1bd6de
Remove "force_initial_map"
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/267163003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21236 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 16:42:57 +00:00
verwaest@chromium.org
a773cd7271
Replace NewFunctionWithPrototype(name, prototype) by NewFunction(name)
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/268063008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21235 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 16:39:33 +00:00
verwaest@chromium.org
8db908784e
Array Iterator prototype should not have a constructor.
...
BUG=v8:3293
LOG=Y
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/258793005
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21234 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 16:37:04 +00:00
verwaest@chromium.org
50436ad462
Merge NewFunction and NewFunctionWithPrototype
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/265763007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21233 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 16:34:58 +00:00
verwaest@chromium.org
ed64101bc7
Reland and fix r21225 and r21226
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/272203002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21232 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 16:18:58 +00:00
ishell@chromium.org
99f2e4d5ac
Fix typos in unit test for Array.prototype.fill()
...
BUG=
LOG=y
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/277953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21231 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 16:11:50 +00:00
danno@chromium.org
36fc96a4b8
Reland r20974: Unify and simplify the FastCloneShallowArrayStub
...
- Don't bake in length/capacity into full codegen calls of stubs,
allowing boilerplates to increase their capacity without regenerating
code.
- Unify all variants of the clone stub into a single,
length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/272513004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21230 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 15:55:45 +00:00
plind44@gmail.com
e7c6f40a65
MIPS: Improve Array.shift() performance for small arrays.
...
Port r21203 (eaa92e4)
TEST=mjsunit/array-shift,mjsunit/array-shift2,mjsunit/array-shift3
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/275883002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 15:49:42 +00:00
vogelheim@chromium.org
623f2371eb
Prevent calls to ReturnValue::Set with pointer-valued types.
...
[2nd try, after the previous version broke the build]
Currently, this code will compile:
SomePointer* p = ...;
ReturnValue r = ...;
r.Set(p);
What happens is that ReturnValue::Set has no pointer-ish overloads, but
a bool one, and hence C++ will convert the pointer to a bool and use
the Set(bool) overload. In other words, the example above is equivalent
to: r.Set(p ? true : false); Which probably isn't what the author had
in mind. This change adds a Set(void*) overload whose body forces a
compile error, to prevent this from happening inadvertently. The only
use of this indeed turned out to be an error.
(Said error was fixed/removed in crrev.com/267393002.)
Why was crrev.com/240013004 reverted?
The orginal version compiled fine on gcc (+ MSVC), but not on clang.
There's no clang try-bots, but the ASAN-based buildbots used clang
and hence the build broke. I'm slightly unsure on why, but clang -
unlike those other compilers - eagerly compiled the non-compilable
setter, which predictably broke. Now, the non-compilable setter uses
the same template logic that all other, comparable cases use. I've
tried 'make qc' with both gcc and clang versions.
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/279883002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21228 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 15:36:51 +00:00
ishell@chromium.org
cb1a32885c
[Sheriff] This reverts commits r21225 and r21226 for breaking Linux64 build.
...
Revert "Make BitField3 a raw uint32 field, and move to the start of the map."
Revert "Make space available in bf3 by moving FunctionWithPrototype to bf1"
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/278883002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21227 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 14:28:59 +00:00
verwaest@chromium.org
3c58a5a8df
Make space available in bf3 by moving FunctionWithPrototype to bf1
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/275053002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21226 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 13:20:40 +00:00
verwaest@chromium.org
ec195cd929
Make BitField3 a raw uint32 field, and move to the start of the map.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/272163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21225 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 13:18:25 +00:00
yangguo@chromium.org
bd93673f40
Shorten autogenerated error message for functions only.
...
R=yangguo@chromium.org , Yang, rossberg@chromium.org
BUG=v8:3019, chromium:331971
LOG=Y
Review URL: https://codereview.chromium.org/271733005
Patch from Andrey Adaykin <aandrey@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21224 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 13:14:09 +00:00
yangguo@chromium.org
3fa6100ed3
Require SSE2 support for the ia32 port.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/275433004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21223 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 13:01:50 +00:00
ishell@chromium.org
ff2d004f85
Presubmit checks recover:
...
1) runtime/references checks temporarily disabled (56 items left)
2) other errors fixed
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/277913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21222 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 12:59:24 +00:00
rmcilroy@chromium.org
2ba3716e4a
Reland - Arm64: Ensure that csp is always aligned to 16 byte values even if jssp is not.
...
Even although the Arm64 specification specifies that csp
only needs to be aligned to 16 bytes if it is dereferenced, some
implementations show poor performance.
Also makes the following change:
- Enable CPU support for arm64 to enable probing of cpu implementer and cpu part.
- Add ALWAYS_ALIGN_CSP CpuFeature for Arm64 and set it based on runtime probing of the cpu imp
- Rename PrepareForPush and PrepareForPop to PushPreamble and PopPostamble and move PopPostabl
Original Review URL: https://codereview.chromium.org/264773004
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/271543004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21221 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 12:51:52 +00:00
hpayer@chromium.org
e82b4cdc40
Add flag to set minimum semi-space size.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/279513003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21220 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 12:37:11 +00:00