You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
4.7 KiB
119 lines
4.7 KiB
diff -up v8-5.2.258/samples/shell.cc.gcc7 v8-5.2.258/samples/shell.cc |
|
--- v8-5.2.258/samples/shell.cc.gcc7 2017-02-28 15:33:38.931424708 -0500 |
|
+++ v8-5.2.258/samples/shell.cc 2017-02-28 15:34:00.759853299 -0500 |
|
@@ -361,6 +361,8 @@ bool ExecuteString(v8::Isolate* isolate, |
|
} else { |
|
v8::Local<v8::Value> result; |
|
if (!script->Run(context).ToLocal(&result)) { |
|
+#pragma GCC diagnostic push |
|
+#pragma GCC diagnostic ignored "-Wgnu" |
|
assert(try_catch.HasCaught()); |
|
// Print errors that happened during execution. |
|
if (report_exceptions) |
|
@@ -368,6 +370,7 @@ bool ExecuteString(v8::Isolate* isolate, |
|
return false; |
|
} else { |
|
assert(!try_catch.HasCaught()); |
|
+#pragma GCC diagnostic pop |
|
if (print_result && !result->IsUndefined()) { |
|
// If all went well and the result wasn't undefined then print |
|
// the returned value. |
|
diff -up v8-5.2.258/src/crankshaft/lithium.cc.gcc7 v8-5.2.258/src/crankshaft/lithium.cc |
|
--- v8-5.2.258/src/crankshaft/lithium.cc.gcc7 2016-05-09 10:28:43.000000000 -0400 |
|
+++ v8-5.2.258/src/crankshaft/lithium.cc 2017-02-28 14:42:17.188361709 -0500 |
|
@@ -128,11 +128,6 @@ void LOperand::PrintTo(StringStream* str |
|
|
|
|
|
template<LOperand::Kind kOperandKind, int kNumCachedOperands> |
|
-LSubKindOperand<kOperandKind, kNumCachedOperands>* |
|
-LSubKindOperand<kOperandKind, kNumCachedOperands>::cache = NULL; |
|
- |
|
- |
|
-template<LOperand::Kind kOperandKind, int kNumCachedOperands> |
|
void LSubKindOperand<kOperandKind, kNumCachedOperands>::SetUpCache() { |
|
if (cache) return; |
|
cache = new LSubKindOperand[kNumCachedOperands]; |
|
diff -up v8-5.2.258/src/crankshaft/lithium.h.gcc7 v8-5.2.258/src/crankshaft/lithium.h |
|
--- v8-5.2.258/src/crankshaft/lithium.h.gcc7 2016-05-09 10:28:43.000000000 -0400 |
|
+++ v8-5.2.258/src/crankshaft/lithium.h 2017-02-28 14:42:17.188361709 -0500 |
|
@@ -338,6 +338,9 @@ class LSubKindOperand final : public LOp |
|
explicit LSubKindOperand(int index) : LOperand(kOperandKind, index) { } |
|
}; |
|
|
|
+template<LOperand::Kind kOperandKind, int kNumCachedOperands> |
|
+LSubKindOperand<kOperandKind, kNumCachedOperands>* |
|
+LSubKindOperand<kOperandKind, kNumCachedOperands>::cache = NULL; |
|
|
|
#define LITHIUM_TYPEDEF_SUBKIND_OPERAND_CLASS(name, type, number) \ |
|
typedef LSubKindOperand<LOperand::type, number> L##name; |
|
diff -up v8-5.2.258/src/objects-body-descriptors.h.gcc7 v8-5.2.258/src/objects-body-descriptors.h |
|
--- v8-5.2.258/src/objects-body-descriptors.h.gcc7 2016-05-09 10:28:43.000000000 -0400 |
|
+++ v8-5.2.258/src/objects-body-descriptors.h 2017-02-28 14:42:17.189361685 -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 v8-5.2.258/src/objects.h.gcc7 v8-5.2.258/src/objects.h |
|
--- v8-5.2.258/src/objects.h.gcc7 2016-05-09 10:28:43.000000000 -0400 |
|
+++ v8-5.2.258/src/objects.h 2017-02-28 14:42:17.190361661 -0500 |
|
@@ -3182,22 +3182,10 @@ class HashTableBase : public FixedArray |
|
template <typename Derived, typename Shape, typename Key> |
|
class HashTable : public HashTableBase { |
|
public: |
|
- // 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 v8-5.2.258/src/objects-inl.h.gcc7 v8-5.2.258/src/objects-inl.h |
|
--- v8-5.2.258/src/objects-inl.h.gcc7 2016-05-09 10:28:43.000000000 -0400 |
|
+++ v8-5.2.258/src/objects-inl.h 2017-02-28 14:42:17.191361638 -0500 |
|
@@ -35,6 +35,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(); |
|
}
|
|
|