1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
--- js/src/Makefile.in~
+++ js/src/Makefile.in
@@ -791,6 +791,13 @@ EXTRA_LIBS += -lposix4 -ldl -lnsl -lsock
endif
endif
+# clang 3.3 + -O2 makes jaeger crash in FixupArity
+ifdef CLANG_CXX
+ifndef MOZ_DEBUG
+Compiler.$(OBJ_SUFFIX): CXXFLAGS += -fno-inline-functions
+endif
+endif
+
# An AIX Optimization bug causes PR_dtoa() & JS_dtoa to produce wrong result.
# This suppresses optimization for this single compilation unit.
ifeq ($(OS_ARCH),AIX)
--- js/src/jscompartment.h~
+++ js/src/jscompartment.h
@@ -596,12 +596,12 @@ class js::AutoDebugModeGC
// The DEBUG_MODE_GC reason forces the collector to always throw
// everything away, as required for debug mode transitions.
if (needGC)
- GC(rt, GC_NORMAL, gcreason::DEBUG_MODE_GC);
+ GC(rt, GC_NORMAL, js::gcreason::DEBUG_MODE_GC);
}
- void scheduleGC(Zone *zone) {
+ void scheduleGC(JS::Zone *zone) {
JS_ASSERT(!rt->isHeapBusy());
- PrepareZoneForGC(zone);
+ js::PrepareZoneForGC(zone);
needGC = true;
}
};
--- js/src/jspropertycacheinlines.h~
+++ js/src/jspropertycacheinlines.h
@@ -32,7 +32,7 @@ JS_ALWAYS_INLINE void
js::PropertyCache::test(JSContext *cx, jsbytecode *pc, JSObject **obj,
JSObject **pobj, PropertyCacheEntry **entry, PropertyName **name)
{
- AutoAssertNoGC nogc;
+ js::AutoAssertNoGC nogc;
JS_ASSERT(this == &cx->propertyCache());
@@ -65,7 +65,7 @@ JS_ALWAYS_INLINE bool
js::PropertyCache::testForSet(JSContext *cx, jsbytecode *pc, JSObject *obj,
PropertyCacheEntry **entryp, JSObject **obj2p, PropertyName **namep)
{
- AutoAssertNoGC nogc;
+ js::AutoAssertNoGC nogc;
JS_ASSERT(this == &cx->propertyCache());
--- js/src/vm/ObjectImpl-inl.h~
+++ js/src/vm/ObjectImpl-inl.h
@@ -164,9 +164,9 @@ js::ObjectImpl::initializeSlotRange(uint
JSRuntime *rt = runtime();
uint32_t offset = start;
for (HeapSlot *sp = fixedStart; sp < fixedEnd; sp++)
- sp->init(rt, this->asObjectPtr(), HeapSlot::Slot, offset++, UndefinedValue());
+ sp->init(rt, this->asObjectPtr(), HeapSlot::Slot, offset++, js::UndefinedValue());
for (HeapSlot *sp = slotsStart; sp < slotsEnd; sp++)
- sp->init(rt, this->asObjectPtr(), HeapSlot::Slot, offset++, UndefinedValue());
+ sp->init(rt, this->asObjectPtr(), HeapSlot::Slot, offset++, js::UndefinedValue());
}
inline bool
@@ -321,7 +321,7 @@ js::ObjectImpl::sizeOfThis() const
js::ObjectImpl::readBarrier(ObjectImpl *obj)
{
#ifdef JSGC_INCREMENTAL
- Zone *zone = obj->zone();
+ JS::Zone *zone = obj->zone();
if (zone->needsBarrier()) {
MOZ_ASSERT(!zone->rt->isHeapBusy());
JSObject *tmp = obj->asObjectPtr();
@@ -335,7 +335,7 @@ inline void
js::ObjectImpl::privateWriteBarrierPre(void **old)
{
#ifdef JSGC_INCREMENTAL
- Zone *zone = this->zone();
+ JS::Zone *zone = this->zone();
if (zone->needsBarrier()) {
if (*old && getClass()->trace)
getClass()->trace(zone->barrierTracer(), this->asObjectPtr());
@@ -362,7 +362,7 @@ js::ObjectImpl::writeBarrierPre(ObjectIm
if (uintptr_t(obj) < 32)
return;
- Zone *zone = obj->zone();
+ JS::Zone *zone = obj->zone();
if (zone->needsBarrier()) {
MOZ_ASSERT(!zone->rt->isHeapBusy());
JSObject *tmp = obj->asObjectPtr();
|