fix issue with gcc7 compile in v8 (thanks to Ben Noordhuis)
This commit is contained in:
parent
26fbfad209
commit
54f615ebbd
|
@ -0,0 +1,71 @@
|
||||||
|
diff -up chromium-56.0.2924.87/v8/src/objects-body-descriptors.h.gcc7 chromium-56.0.2924.87/v8/src/objects-body-descriptors.h
|
||||||
|
--- chromium-56.0.2924.87/v8/src/objects-body-descriptors.h.gcc7 2017-02-28 16:00:27.313172210 -0500
|
||||||
|
+++ chromium-56.0.2924.87/v8/src/objects-body-descriptors.h 2017-02-28 16:00:46.016804708 -0500
|
||||||
|
@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public
|
||||||
|
|
||||||
|
template <typename StaticVisitor>
|
||||||
|
static inline void IterateBody(HeapObject* obj, int object_size) {
|
||||||
|
- IterateBody(obj);
|
||||||
|
+ IterateBody<StaticVisitor>(obj);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
diff -up chromium-56.0.2924.87/v8/src/objects.h.gcc7 chromium-56.0.2924.87/v8/src/objects.h
|
||||||
|
--- chromium-56.0.2924.87/v8/src/objects.h.gcc7 2017-02-28 15:58:27.368527968 -0500
|
||||||
|
+++ chromium-56.0.2924.87/v8/src/objects.h 2017-02-28 15:59:25.868379455 -0500
|
||||||
|
@@ -3531,22 +3531,10 @@ class HashTable : public HashTableBase {
|
||||||
|
public:
|
||||||
|
typedef Shape ShapeT;
|
||||||
|
|
||||||
|
- // Wrapper methods
|
||||||
|
- inline uint32_t Hash(Key key) {
|
||||||
|
- if (Shape::UsesSeed) {
|
||||||
|
- return Shape::SeededHash(key, GetHeap()->HashSeed());
|
||||||
|
- } else {
|
||||||
|
- return Shape::Hash(key);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- inline uint32_t HashForObject(Key key, Object* object) {
|
||||||
|
- if (Shape::UsesSeed) {
|
||||||
|
- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
|
||||||
|
- } else {
|
||||||
|
- return Shape::HashForObject(key, object);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
+ // Wrapper methods. Defined in src/objects-inl.h
|
||||||
|
+ // to break a cycle with src/heap/heap.h.
|
||||||
|
+ inline uint32_t Hash(Key key);
|
||||||
|
+ inline uint32_t HashForObject(Key key, Object* object);
|
||||||
|
|
||||||
|
// Returns a new HashTable object.
|
||||||
|
MUST_USE_RESULT static Handle<Derived> New(
|
||||||
|
diff -up chromium-56.0.2924.87/v8/src/objects-inl.h.gcc7 chromium-56.0.2924.87/v8/src/objects-inl.h
|
||||||
|
--- chromium-56.0.2924.87/v8/src/objects-inl.h.gcc7 2017-02-28 15:59:44.293016928 -0500
|
||||||
|
+++ chromium-56.0.2924.87/v8/src/objects-inl.h 2017-02-28 16:00:18.187351116 -0500
|
||||||
|
@@ -39,6 +39,25 @@
|
||||||
|
namespace v8 {
|
||||||
|
namespace internal {
|
||||||
|
|
||||||
|
+template <typename Derived, typename Shape, typename Key>
|
||||||
|
+uint32_t HashTable<Derived, Shape, Key>::Hash(Key key) {
|
||||||
|
+ if (Shape::UsesSeed) {
|
||||||
|
+ return Shape::SeededHash(key, GetHeap()->HashSeed());
|
||||||
|
+ } else {
|
||||||
|
+ return Shape::Hash(key);
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+template <typename Derived, typename Shape, typename Key>
|
||||||
|
+uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key,
|
||||||
|
+ Object* object) {
|
||||||
|
+ if (Shape::UsesSeed) {
|
||||||
|
+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
|
||||||
|
+ } else {
|
||||||
|
+ return Shape::HashForObject(key, object);
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
PropertyDetails::PropertyDetails(Smi* smi) {
|
||||||
|
value_ = smi->value();
|
||||||
|
}
|
|
@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4
|
||||||
|
|
||||||
Name: chromium%{chromium_channel}
|
Name: chromium%{chromium_channel}
|
||||||
Version: %{majorversion}.0.2924.87
|
Version: %{majorversion}.0.2924.87
|
||||||
Release: 5%{?dist}
|
Release: 6%{?dist}
|
||||||
Summary: A WebKit (Blink) powered web browser
|
Summary: A WebKit (Blink) powered web browser
|
||||||
Url: http://www.chromium.org/Home
|
Url: http://www.chromium.org/Home
|
||||||
License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2)
|
License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2)
|
||||||
|
@ -158,6 +158,9 @@ Patch30: chromium-56.0.2924.87-gcc-49.patch
|
||||||
Patch31: chromium-56.0.2924.87-fpermissive.patch
|
Patch31: chromium-56.0.2924.87-fpermissive.patch
|
||||||
# Fix issue with unique_ptr move on return with older gcc
|
# Fix issue with unique_ptr move on return with older gcc
|
||||||
Patch32: chromium-56.0.2924.87-unique-ptr-fix.patch
|
Patch32: chromium-56.0.2924.87-unique-ptr-fix.patch
|
||||||
|
# Fix issue with compilation on gcc7
|
||||||
|
# Thanks to Ben Noordhuis
|
||||||
|
Patch33: chromium-56.0.2924.87-gcc7.patch
|
||||||
|
|
||||||
|
|
||||||
### Chromium Tests Patches ###
|
### Chromium Tests Patches ###
|
||||||
|
@ -538,6 +541,7 @@ members of the Chromium and WebDriver teams.
|
||||||
%patch30 -p1 -b .gcc49
|
%patch30 -p1 -b .gcc49
|
||||||
%patch31 -p1 -b .permissive
|
%patch31 -p1 -b .permissive
|
||||||
%patch32 -p1 -b .unique-ptr-fix
|
%patch32 -p1 -b .unique-ptr-fix
|
||||||
|
%patch33 -p1 -b .gcc7
|
||||||
|
|
||||||
### Chromium Tests Patches ###
|
### Chromium Tests Patches ###
|
||||||
%patch100 -p1 -b .use_system_opus
|
%patch100 -p1 -b .use_system_opus
|
||||||
|
@ -1573,6 +1577,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
|
||||||
%{chromium_path}/chromedriver
|
%{chromium_path}/chromedriver
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Feb 28 2017 Tom Callaway <spot@fedoraproject.org> 56.0.2924.87-6
|
||||||
|
- fix issue with gcc7 compile in v8 (thanks to Ben Noordhuis)
|
||||||
|
|
||||||
* Fri Feb 24 2017 Tom Callaway <spot@fedoraproject.org> 56.0.2924.87-5
|
* Fri Feb 24 2017 Tom Callaway <spot@fedoraproject.org> 56.0.2924.87-5
|
||||||
- versioning sync build on rawhide
|
- versioning sync build on rawhide
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue