- 14 Apr, 2018 1 commit
-
-
Jakob Kummerow authored
The "Address" type is V8's general-purpose type for manipulating memory addresses. Per the C++ spec, pointer arithmetic and pointer comparisons are undefined behavior except within the same array; since we generally don't operate within a C++ array, our general-purpose type shouldn't be a pointer type. Bug: v8:3770 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ib96016c24a0f18bcdba916dabd83e3f24a1b5779 Reviewed-on: https://chromium-review.googlesource.com/988657 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#52601}
-
- 21 Feb, 2018 1 commit
-
-
Junliang Yan authored
R=joransiu@ca.ibm.com Change-Id: I1377d90de81eb5f0ecfe9318c3126f55fb36cac2 Reviewed-on: https://chromium-review.googlesource.com/929753Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#51451}
-
- 09 Feb, 2018 1 commit
-
-
Michael Starzinger authored
This refactors the instruction cache simulation to now be maintained process-wide (as opposed to be per Isolate). It prepares for allowing to share code between Isolates (e.g. WebAssembly or shared builtins) while still allowing to simulate execution of such shared code. R=clemensh@chromium.org Change-Id: I5a6f083f4e32597565dc646f13b4445014c0daaa Reviewed-on: https://chromium-review.googlesource.com/909130Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#51219}
-
- 08 Jan, 2018 2 commits
-
-
Clemens Hammacher authored
In order to remove the CALL_GENERATED_CODE macro, it helps a lot to unify the interfaces of the simulators and make the Call method variadic in the number of arguments. This CL does that for each simulator. A follow-up CL will then completely remove the CALL_GENERATED_CODE macro and replace uses with the (new) GeneratedCode wrapper. R=mstarzinger@chromium.org Bug: v8:7182 Change-Id: I1f81445ec2faba30f0bd233b022ae1f0fae4e96f Reviewed-on: https://chromium-review.googlesource.com/850873 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#50413}
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: I53b9de78d6070d04b7535c828fd72225fd93afde Reviewed-on: https://chromium-review.googlesource.com/829375Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#50405}
-
- 15 Dec, 2017 1 commit
-
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: I6ada57fe5d534ab4ad2549a585d91b204e55a2a6 Reviewed-on: https://chromium-review.googlesource.com/824604 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50124}
-
- 13 Dec, 2017 2 commits
-
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: I80201b16c5d7a373ae5ff56bfafb46f4425bf997 Reviewed-on: https://chromium-review.googlesource.com/824243 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50082}
-
Michael Starzinger authored
This refactors the list of redirections of runtime call targets that simulators maintain to be process-wide (as opposed to be per Isolate). Such redirections are used for static C++ call targets which themselves are process-wide, which makes this model a closer fit. Access is already properly synchronized via a mutex. Along the way this also introduces the {SimulatorBase} class as a common base class for all simulator implementations. R=clemensh@chromium.org Change-Id: Iae8602c44b1b34cb916dde2b22c9403b0496b3d4 Reviewed-on: https://chromium-review.googlesource.com/823966 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50074}
-
- 02 Dec, 2017 1 commit
-
-
Mathias Bynens authored
This patch normalizes the casing of hexadecimal digits in escape sequences of the form `\xNN` and integer literals of the form `0xNNNN`. Previously, the V8 code base used an inconsistent mixture of uppercase and lowercase. Google’s C++ style guide uses uppercase in its examples: https://google.github.io/styleguide/cppguide.html#Non-ASCII_Characters Moreover, uppercase letters more clearly stand out from the lowercase `x` (or `u`) characters at the start, as well as lowercase letters elsewhere in strings. BUG=v8:7109 TBR=marja@chromium.org,titzer@chromium.org,mtrofin@chromium.org,mstarzinger@chromium.org,rossberg@chromium.org,yangguo@chromium.org,mlippautz@chromium.org NOPRESUBMIT=true Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I790e21c25d96ad5d95c8229724eb45d2aa9e22d6 Reviewed-on: https://chromium-review.googlesource.com/804294 Commit-Queue: Mathias Bynens <mathias@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#49810}
-
- 24 Nov, 2017 1 commit
-
-
Yang Guo authored
In snapshots with several contexts, some contexts may not reference function or object templates, and therefore would not require external references for deserialization. However, function and object templates are deserialized with the isolate as part of the partial snapshot cache, so we would need these external references even if we only use contexts that don't need them. With this patch, we use a fallback in case no external references are provided. This way, we only run into issues when we actually call native callbacks. R=jgruber@chromium.org, peria@chromium.org Change-Id: I6af8a77f26c92bd73fdab6112474c62da270597f Reviewed-on: https://chromium-review.googlesource.com/784831Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#49615}
-
- 26 Oct, 2017 1 commit
-
-
Junliang Yan authored
R=joransiu@ca.ibm.com, jbarboza@ca.ibm.com Bug: Change-Id: I5d81c14c658af7e8fb5054e147aada9999fbde0c Reviewed-on: https://chromium-review.googlesource.com/737440Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Joran Siu <joransiu@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#48948}
-
- 23 Oct, 2017 1 commit
-
-
Junliang Yan authored
R=joransiu@ca.ibm.com, jbarboza@ca.ibm.com Bug: Change-Id: Icb4c67c96cb44f75cd73e97929792795b1070dda Reviewed-on: https://chromium-review.googlesource.com/733641Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#48843}
-
- 18 Oct, 2017 1 commit
-
-
Clemens Hammacher authored
This CL fixes all occurences that don't require special OWNER reviews, or can be reviewed by Michi. After this one, we should be able to reenable the readability/check cpplint check. R=mstarzinger@chromium.org Bug: v8:6837, v8:6921 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Ic81d68d5534eaa795b7197fed5c41ed158361d62 Reviewed-on: https://chromium-review.googlesource.com/721120 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#48670}
-
- 13 Oct, 2017 1 commit
-
-
Mathias Bynens authored
New code should use nullptr instead of NULL. This patch updates existing use of NULL to nullptr where applicable, making the code base more consistent. BUG=v8:6928,v8:6921 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I4687f5b96fcfd88b41fa970a2b937b4f6538777c Reviewed-on: https://chromium-review.googlesource.com/718338 Commit-Queue: Mathias Bynens <mathias@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#48557}
-
- 11 Oct, 2017 1 commit
-
-
John Barboza authored
Port fc413158 Original Commit Message: ObjectTriple isn't used since f1ec44e2. Delete it, and simplify CEntryStub on all backends. R=martyn.capewell@arm.com, joransiu@ca.ibm.com, jyan@ca.ibm.com, bjaideep@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I4897783bb848e016d93731585e6891033fa4d4cf Reviewed-on: https://chromium-review.googlesource.com/714022Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#48476}
-
- 09 Oct, 2017 1 commit
-
-
Martyn Capewell authored
ObjectTriple isn't used since f1ec44e2. Delete it, and simplify CEntryStub on all backends. Bug: Change-Id: I046525afceb25b484fd96c7ee81c73fb03168ca0 Reviewed-on: https://chromium-review.googlesource.com/704858Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/master@{#48369}
-
- 03 Aug, 2017 2 commits
-
-
Anisha Rohra authored
Port 4b0099a4 R=mstarzinger@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, bjaideep@ca.ibm.com BUG= LOG=N Change-Id: I4be5357b265ca970a8d1a0db41ddc73ff47bffdc Reviewed-on: https://chromium-review.googlesource.com/600512Reviewed-by:
Jaideep Bajwa <bjaideep@ca.ibm.com> Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#47145}
-
Michael Starzinger authored
This removes the obsolete {Crankshaft} factory method as it returns the same configuration as the {Turbofan} factory by now. We now consistently use {RegisterConfiguration::Default} everywhere. R=jkummerow@chromium.org BUG=v8:6408 Change-Id: I6be25774aa6714ef4dc1ef6856bb6dbc95593a29 Reviewed-on: https://chromium-review.googlesource.com/597858Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47109}
-
- 02 Aug, 2017 1 commit
-
-
Julien Brianceau authored
Bug: chromium:750830 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Icab7b5a1c469d5e77d04df8bfca8319784e92af4 Reviewed-on: https://chromium-review.googlesource.com/595655 Commit-Queue: Julien Brianceau <jbriance@cisco.com> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Daniel Ehrenberg <littledan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47072}
-
- 16 May, 2017 1 commit
-
-
sampsong authored
R=bjaideep@ca.ibm.com, jyan@ca.ibm.com, joransiu@ca.ibm.com BUG= Review-Url: https://codereview.chromium.org/2888533003 Cr-Commit-Position: refs/heads/master@{#45348}
-
- 02 May, 2017 1 commit
-
-
neis authored
In the simulators, the ExternalReference constructor rewrites external addresses, which involves mutating a linked list rooted in the isolate. We already construct external references concurrently (at least in Turbofan), but the list mutation was not thread-safe (though no crashes are known). This CL adds the necessary locking. BUG=v8:6048 Review-Url: https://codereview.chromium.org/2852983002 Cr-Commit-Position: refs/heads/master@{#45014}
-
- 25 Apr, 2017 1 commit
-
-
bjaideep authored
Port 3337cccc Original Commit Message: Consistently support calls to host-C-linkage functions with up to 9 arguments from the simulator, and check that these limits aren't exceeded accidentally. R=jgruber@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG=v8:6281 LOG=N Review-Url: https://codereview.chromium.org/2841693003 Cr-Commit-Position: refs/heads/master@{#44858}
-
- 30 Mar, 2017 1 commit
-
-
bjaideep authored
Implemented l[w|h|b]arx and st[w|h|b]cx instructions which are needed to perform atomic exchange. Also added synchronization primitives similar to arm to simulate those instructions. R=joransiu@ca.ibm.com, jyan@ca.ibm.com, binji@chromium.org, aseemgarg@chromium.org BUG= Review-Url: https://codereview.chromium.org/2754263004 Cr-Commit-Position: refs/heads/master@{#44257}
-
- 23 Mar, 2017 1 commit
-
-
sampsong authored
R=bjaideep@ca.ibm.com, jyan@ca.ibm.com, joransiu@ca.ibm.com BUG= Review-Url: https://codereview.chromium.org/2760983003 Cr-Commit-Position: refs/heads/master@{#44070}
-
- 24 Feb, 2017 1 commit
-
-
sampsong authored
BUG= R=bjaideep@ca.ibm.com, jyan@ca.ibm.com, joransiu@ca.ibm.com Review-Url: https://codereview.chromium.org/2710153002 Cr-Commit-Position: refs/heads/master@{#43421}
-
- 30 Jan, 2017 1 commit
-
-
bjaideep authored
On ia32/x64 when casting a sNan to double, the signalling bit is flipped to qNan. R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Review-Url: https://codereview.chromium.org/2660873003 Cr-Commit-Position: refs/heads/master@{#42786}
-
- 13 Jan, 2017 1 commit
-
-
bjaideep authored
Enabled support for Power9 hardware and implemented P9 modulo instruction. R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, jochen@chromium.org BUG= LOG=n Review-Url: https://codereview.chromium.org/2625013002 Cr-Commit-Position: refs/heads/master@{#42341}
-
- 12 Jan, 2017 1 commit
-
-
bjaideep authored
Add VSX instructions to perform add/sub/mul/div R=jyan@ca.ibm.com, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com, danno@chromium.org, jkummerow@chromium.org, jochen@chromium.org BUG= LOG=N Review-Url: https://codereview.chromium.org/2619763003 Cr-Commit-Position: refs/heads/master@{#42272}
-
- 30 Sep, 2016 1 commit
-
-
leszeks authored
matching function, creates a hashmap the specialises the case of keys that simply check pointer equality. I measure an average ~1% improvement on Octane code-load. Review-Url: https://codereview.chromium.org/2369963002 Cr-Commit-Position: refs/heads/master@{#39920}
-
- 26 Jul, 2016 1 commit
-
-
yangguo authored
This feature has not been used in the past few years and most likely does not even work anymore. R=ishell@chromium.org Review-Url: https://codereview.chromium.org/2186533002 Cr-Commit-Position: refs/heads/master@{#38046}
-
- 27 Jun, 2016 1 commit
-
-
bbudge authored
Replaces ArchDefault method with Crankshaft and Turbofan getters. Eliminates IsAllocated method on Register, FloatRegister, DoubleRegister. Eliminates ToString method too. Changes call sites to access appropriate arch default RegisterConfiguration. LOG=N BUG= Review-Url: https://codereview.chromium.org/2092413002 Cr-Commit-Position: refs/heads/master@{#37297}
-
- 10 Jun, 2016 1 commit
-
-
bjaideep authored
Port 2fd55667 Original commit message: We ported hashmap.h into libsampler as a workaround before, so the main focus of this patch is to reduce code duplication. This patch moves the hashmap into src/base as well as creates DefaultAllocationPolicy using malloc and free. R=lpy@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG=v8:5050 LOG=N Review-Url: https://codereview.chromium.org/2057263002 Cr-Commit-Position: refs/heads/master@{#36900}
-
- 25 May, 2016 1 commit
-
-
bjaideep authored
Port a23222ed Original commit message: For cross-compiler-compatibility and standards compliance %p requires a void*, rather than any pointer type. R=machenbach@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG=chromium:474921 LOG=N Review-Url: https://codereview.chromium.org/2009653002 Cr-Commit-Position: refs/heads/master@{#36519}
-
- 16 Mar, 2016 2 commits
-
-
mbrandy authored
R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1809643004 Cr-Commit-Position: refs/heads/master@{#34837}
-
mbrandy authored
Port 33c08596 Original commit message: Int64Sub is lowered to a new turbofan operator, Int32SubPair. The new operator takes 4 inputs an generates 2 outputs. The inputs are the low word of the left input, high word of the left input, the low word of the right input, and high word of the right input. The ouputs are the low and high word of the result of the subtraction. The implementation is very similar to the implementation of Int64Add. R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1812473002 Cr-Commit-Position: refs/heads/master@{#34821}
-
- 15 Mar, 2016 1 commit
-
-
mbrandy authored
Port 1b230799 Original commit message: Int64Add is lowered to a new turbofan operator, Int32AddPair. The new operator takes 4 inputs an generates 2 outputs. The inputs are the low word of the left input, high word of the left input, the low word of the right input, and high word of the right input. The ouputs are the low and high word of the result of the addition. R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1803113002 Cr-Commit-Position: refs/heads/master@{#34797}
-
- 10 Feb, 2016 1 commit
-
-
mbrandy authored
Port cfbd2561 Original commit message: Preparing the young generation for (real) non-contiguous backing memory, this change removes object masks that are used to compute containment in semi and new space. The masks are replaced by lookups for object tags and page headers, where possible. Details: - Use the fast checks (page header lookups) for containment in regular code. - Use the slow version that masks out the page start adress and iterates all pages of a space for debugging/verification. - The slow version works for off-heap/unmapped memory. - Encapsulate all checks for the old->new barrier in Heap::RecordWrite(). R=mlippautz@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG=chromium:581412 LOG=N Review URL: https://codereview.chromium.org/1687113002 Cr-Commit-Position: refs/heads/master@{#33877}
-
- 22 Jan, 2016 1 commit
-
-
mbrandy authored
This change allows the PPC simulator to execute on PPC hardware where, due to calling conventions, we must distinguish between Object* and ObjectPair return values. We find this useful as another available option for debugging certain problems. While not strictly necessary for Intel platforms, we hope that this is less offensive now that BUILTIN_CALL_TRIPLE has been added. BUG= R=rmcilroy@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com Review URL: https://codereview.chromium.org/1604653006 Cr-Commit-Position: refs/heads/master@{#33475}
-
- 20 Jan, 2016 1 commit
-
-
mbrandy authored
Where possible: - eliminate special-case code generation for simulator. - eliminate #ifdefs. R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1607663004 Cr-Commit-Position: refs/heads/master@{#33407}
-
- 15 Jan, 2016 1 commit
-
-
mbrandy authored
R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1590423002 Cr-Commit-Position: refs/heads/master@{#33343}
-