Chromium Code Reviews
DescriptionAdd DISABLE_CFI_PERF attribute on the methods with CFI checks disabled.
Types converted in this CL:
LayoutBlockModelObject, LayoutFlexibleObject, LayoutGrid, LayoutObject, LayoutObjectChildList.
While we have not observed CFI to slowdown real-world use cases,
there are a few blink_perf microbenchmarks, which are somewhat affected
by the change. This change removes CFI protection from the methods
which contribute the most to the slowdown.
Eventually, when proposed optimizations in Clang are implemented
(https://crbug.com/638056, https://crbug.com/638064), these attributes
would be possible to remove from all/most of the methods.
This CL does not in fact change the list of disabled methods, it
just converts them from CFI blacklist entries into attributes.
This should increase visibility, and also serve as a guard against refactoring.
BUG=641536
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Committed: https://crrev.com/7a5a65d12fdb71cba72df34881548cfaaf6b618c
Cr-Commit-Position: refs/heads/master@{#418196}
Patch Set 1 #Patch Set 2 : LayoutFlexibleBox #Patch Set 3 : LayoutGrid #Patch Set 4 : LayoutObject, LayoutObjectChildList #Messages
Total messages: 20 (11 generated)
|