- 25 Oct, 2017 1 commit
-
-
Jaroslav Sevcik authored
I am not committing the regression test from the bug because it takes ages to run, but I have locally verified that it passes now. Bug: chromium:776645 Change-Id: Ia7128d9fa3cf864b1c1b646802a973fe41d4c4ae Reviewed-on: https://chromium-review.googlesource.com/735484Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#48893}
-
- 29 May, 2017 1 commit
-
-
Michael Starzinger authored
This widens the range of value output counts to 32 bit on the {Operator} class. Note that the limit imposed by the parser is 65535 parameters for each function, but the {Start} node has additional value outputs. R=jarin@chromium.org TEST=mjsunit/regress/regress-crbug-724153 BUG=chromium:724153 Change-Id: I21b5d947cc2305b255ddbbff6ec1dfa5c02784c7 Reviewed-on: https://chromium-review.googlesource.com/517489Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45573}
-
- 17 May, 2017 1 commit
-
-
Clemens Hammacher authored
The underlying issue is that TF Nodes cannot handle input counts outside the integer range. On an illegal br_table instruction, we generated a switch node with a control output count >kMaxInt. Operator::ControlOutputCount turned this into a negative integer later, leading to a failing DCHECK. Since such large numbers cannot occur in any valid wasm function anyway, we just add an additional check to the br table count. There is already a TODO in the code to change Operator::ControlOutputCount to size_t. R=ahaas@chromium.org BUG=chromium:722445 Change-Id: I1975072226e073dee6c8da3b9fa9a050a4695917 Reviewed-on: https://chromium-review.googlesource.com/505496Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#45365}
-
- 19 Oct, 2016 1 commit
-
-
ahaas authored
Using uint32 to store the the number of control outputs allows WebAssembly switches to have more than 2^16 case. BUG=v8:5531 TEST=mjsunit/regress/wasm/regression-5531 R=titzer@chromium.org Review-Url: https://chromiumcodereview.appspot.com/2425983002 Cr-Commit-Position: refs/heads/master@{#40420}
-
- 09 Aug, 2016 1 commit
-
-
bgeron authored
BUG= Review-Url: https://codereview.chromium.org/2225683009 Cr-Commit-Position: refs/heads/master@{#38500}
-
- 15 Jul, 2016 1 commit
-
-
bgeron authored
With this patch, every node in turbo-*.json has an opcode, a title, and a label. The label field is new; the opcode and title were already there. The title is for the mouseover text. The label is what will be displayed in the graph view, unless it's too long, in which case only the opcode will be displayed. (This is similar to the preexisting behaviour of putting titles in labels, except that the titles were rarely short enough to fit in a label.) With this patch, the labels generated are in practice the same as the titles we had before, except for LoadField and StoreField, which will be rendered as LoadField[[+432]] and StoreField[[+432]] (if 432 was the offset). This diff adds an overloadable method virtual void Operator1<T>::PrintParameter(ostream&, PrintVerbosity) for each type T to Operator1. Its default implementation just uses operator<<(ostream&, T const&) and adds square brackets around it, but it is overridden for FieldAccess to print "[+432]" in the example case. BUG= R=jarin,danno Review-Url: https://codereview.chromium.org/2093013002 Cr-Commit-Position: refs/heads/master@{#37795}
-
- 17 Feb, 2015 1 commit
-
-
bmeurer authored
This adds a new ControlFlowOptimizer that - for now - recognizes chains of Branches generated by the SwitchBuilder for a subset of javascript switches into Switch nodes. Those Switch nodes are then lowered to either table or lookup switches. Also rename Case to IfValue (and introduce IfDefault) for consistency. BUG=v8:3872 LOG=n Review URL: https://codereview.chromium.org/931623002 Cr-Commit-Position: refs/heads/master@{#26691}
-
- 09 Feb, 2015 1 commit
-
-
bmeurer authored
Adds Switch and Case operators to TurboFan and handles them appropriately in instruction selection and code generation. BUG=v8:3872 LOG=n Review URL: https://codereview.chromium.org/892513003 Cr-Commit-Position: refs/heads/master@{#26515}
-
- 29 Oct, 2014 1 commit
-
-
titzer@chromium.org authored
This is a first step to refactoring OperatorProperties out of existence. The next step is to inline OperatorProperties::GetXXXCount into the callers. R=rossberg@chromium.org BUG= Review URL: https://codereview.chromium.org/680313003 Cr-Commit-Position: refs/heads/master@{#24983} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Oct, 2014 1 commit
-
-
bmeurer@chromium.org authored
The StaticParameterTraits are broken by design, and cause way too much trouble. The compilers usually pick the wrong specialization (i.e. the default specialization is picked for Load and Phi even tho there is a specialization for MachineType), which is not only the reason why GVN is ineffective and slow, but can also lead to correctness issues in some rare cases. Also clean up some minor bugs/inconsistencies on the way. TEST=cctest,unittests R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/636893002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24437 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Sep, 2014 1 commit
-
-
bmeurer@chromium.org authored
TEST=compiler-unittests,cctest R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/565753004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23913 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Sep, 2014 1 commit
-
-
bmeurer@chromium.org authored
- Real const-correctness - Proper forward declarations instead of #include "src/v8.h" - Flags for Operator properties. - etc. TEST=compiler-unittests,cctest R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/526313002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23601 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-