diff --git a/js/src/ion/Ion.cpp b/js/src/ion/Ion.cpp index 308c8d86e58..488830e2621 100644 --- a/js/src/ion/Ion.cpp +++ b/js/src/ion/Ion.cpp @@ -1855,12 +1855,11 @@ ion::Invalidate(types::TypeCompartment &types, FreeOp *fop, // until its last invalidated frame is destroyed. for (size_t i = 0; i < invalid.length(); i++) { types::CompilerOutput &co = *invalid[i].compilerOutput(types); - ExecutionMode executionMode; + ExecutionMode executionMode = SequentialExecution; switch (co.kind()) { case types::CompilerOutput::MethodJIT: continue; case types::CompilerOutput::Ion: - executionMode = SequentialExecution; break; case types::CompilerOutput::ParallelIon: executionMode = ParallelExecution; diff --git a/js/src/ion/shared/CodeGenerator-x86-shared.cpp b/js/src/ion/shared/CodeGenerator-x86-shared.cpp index e2f654bdc92..b5d9682c684 100644 --- a/js/src/ion/shared/CodeGenerator-x86-shared.cpp +++ b/js/src/ion/shared/CodeGenerator-x86-shared.cpp @@ -575,7 +575,7 @@ CodeGeneratorX86Shared::visitOutOfLineUndoALUOperation(OutOfLineUndoALUOperation LInstruction *ins = ool->ins(); Register reg = ToRegister(ins->getDef(0)); - LAllocation *lhs = ins->getOperand(0); + mozilla::DebugOnly lhs = ins->getOperand(0); LAllocation *rhs = ins->getOperand(1); JS_ASSERT(reg == ToRegister(lhs)); diff --git a/js/src/jsclone.cpp b/js/src/jsclone.cpp index 2d94b293b37..c8505e4c8cc 100644 --- a/js/src/jsclone.cpp +++ b/js/src/jsclone.cpp @@ -207,8 +207,10 @@ SCInput::SCInput(JSContext *cx, uint64_t *data, size_t nbytes) bool SCInput::read(uint64_t *p) { - if (point == end) + if (point == end) { + *p = 0; /* initialize to shut GCC up */ return eof(); + } *p = SwapBytes(*point++); return true; } @@ -216,7 +218,7 @@ SCInput::read(uint64_t *p) bool SCInput::readPair(uint32_t *tagp, uint32_t *datap) { - uint64_t u = 0; /* initialize to shut GCC up */ + uint64_t u; bool ok = read(&u); if (ok) { *tagp = uint32_t(u >> 32); diff --git a/js/src/jsinfer.cpp b/js/src/jsinfer.cpp index 4c2a0729b19..118ff72a5a8 100644 --- a/js/src/jsinfer.cpp +++ b/js/src/jsinfer.cpp @@ -6149,8 +6149,7 @@ TypeCompartment::sweep(FreeOp *fop) if (arrayTypeTable) { for (ArrayTypeTable::Enum e(*arrayTypeTable); !e.empty(); e.popFront()) { const ArrayTableKey &key = e.front().key; - TypeObject *obj = e.front().value; - JS_ASSERT(obj->proto == key.proto); + JS_ASSERT(e.front().value->proto == key.proto); JS_ASSERT(!key.type.isSingleObject()); bool remove = false; diff --git a/js/src/jsobjinlines.h b/js/src/jsobjinlines.h index 9715bf8f8e9..39e7d7d85eb 100644 --- a/js/src/jsobjinlines.h +++ b/js/src/jsobjinlines.h @@ -928,8 +928,10 @@ JSObject::hasProperty(JSContext *cx, js::HandleObject obj, js::RootedObject pobj(cx); js::RootedShape prop(cx); JSAutoResolveFlags rf(cx, flags); - if (!lookupGeneric(cx, obj, id, &pobj, &prop)) + if (!lookupGeneric(cx, obj, id, &pobj, &prop)) { + *foundp = false; /* initialize to shut GCC up */ return false; + } *foundp = !!prop; return true; } diff --git a/js/src/jsworkers.cpp b/js/src/jsworkers.cpp index d1fd28a6ec4..83659e558c9 100644 --- a/js/src/jsworkers.cpp +++ b/js/src/jsworkers.cpp @@ -315,7 +315,7 @@ WorkerThread::threadLoop() ionBuilder = state.ionWorklist.popCopy(); - ion::ExecutionMode executionMode = ionBuilder->info().executionMode(); + DebugOnly executionMode = ionBuilder->info().executionMode(); JS_ASSERT(GetIonScript(ionBuilder->script().unsafeGet(), executionMode) == ION_COMPILING_SCRIPT); state.unlock();