Bug 1316803 - Remove obsolete comments. r=me DONTBUILD
authorLars T Hansen <lhansen@mozilla.com>
Tue, 24 Jan 2017 11:34:43 +0100
changeset 465596 f91c4c151a403db894c086e1b1b0a4c9513182e6
parent 465595 7de92df120488e13bd4315e1790796d2eb8f7af4
child 465597 b70259d3610aa2ccd0f428043a19bbae83cd28de
push id42639
push usergpascutto@mozilla.com
push dateTue, 24 Jan 2017 11:10:35 +0000
reviewersme
bugs1316803
milestone54.0a1
Bug 1316803 - Remove obsolete comments. r=me DONTBUILD
js/src/wasm/WasmBaselineCompile.cpp
--- a/js/src/wasm/WasmBaselineCompile.cpp
+++ b/js/src/wasm/WasmBaselineCompile.cpp
@@ -23,17 +23,16 @@
  * "FIXME" indicates a known or suspected bug.  Always has a bug#.
  *
  * "TODO" indicates an opportunity for a general improvement, with an additional
  * tag to indicate the area of improvement.  Usually has a bug#.
  *
  * Unimplemented functionality:
  *
  *  - Tiered compilation (bug 1277562)
- *  - profiler support / devtools (bug 1286948)
  *  - SIMD
  *  - Atomics
  *
  * There are lots of machine dependencies here but they are pretty well isolated
  * to a segment of the compiler.  Many dependencies will eventually be factored
  * into the MacroAssembler layer and shared with other code generators.
  *
  *
@@ -44,20 +43,16 @@
  *   in use but there is a free register to shuffle the specific register into.
  *   (This will also improve the generated code.)  The sync happens often enough
  *   here to show up in profiles, because it is triggered by integer multiply
  *   and divide.
  *
  *
  * High-value code generation improvements:
  *
- * - (Bug 1316803) Opportunities for cheaply folding in a constant rhs to
- *   arithmetic operations, we do this already for I32 add and shift operators,
- *   this reduces register pressure and instruction count.
- *
  * - (Bug 1316804) brTable pessimizes by always dispatching to code that pops
  *   the stack and then jumps to the code for the target case.  If no cleanup is
  *   needed we could just branch conditionally to the target; if the same amount
  *   of cleanup is needed for all cases then the cleanup can be done before the
  *   dispatch.  Both are highly likely.
  *
  * - (Bug 1316806) Register management around calls: At the moment we sync the
  *   value stack unconditionally (this is simple) but there are probably many
@@ -2236,17 +2231,17 @@ class BaseCompiler
         }
 
         // Restore the TLS register in case it was overwritten by the function.
         loadFromFramePtr(WasmTlsReg, frameOffsetFromSlot(tlsSlot_, MIRType::Pointer));
 
         GenerateFunctionEpilogue(masm, localSize_, &offsets_);
 
 #if defined(JS_ION_PERF)
-        // FIXME - profiling code missing.  Bug 1286948.
+        // FIXME - profiling code missing.  No bug for this.
 
         // Note the end of the inline code and start of the OOL code.
         //gen->perfSpewer().noteEndInlineCode(masm);
 #endif
 
         if (!generateOutOfLineCode())
             return false;
 
@@ -4091,28 +4086,26 @@ BaseCompiler::emitSubtractF64()
     masm.subDouble(r1, r0);
     freeF64(r1);
     pushF64(r0);
 }
 
 void
 BaseCompiler::emitMultiplyI32()
 {
-    // TODO / OPTIMIZE: Multiplication by constant is common (Bug 1275442, 1316803)
     RegI32 r0, r1;
     pop2xI32ForIntMulDiv(&r0, &r1);
     masm.mul32(r1, r0);
     freeI32(r1);
     pushI32(r0);
 }
 
 void
 BaseCompiler::emitMultiplyI64()
 {
-    // TODO / OPTIMIZE: Multiplication by constant is common (Bug 1275442, 1316803)
     RegI64 r0, r1;
     RegI32 temp;
 #if defined(JS_CODEGEN_X64)
     // srcDest must be rax, and rdx will be clobbered.
     need2xI64(specific_rax, specific_rdx);
     r1 = popI64();
     r0 = popI64ToSpecific(specific_rax);
     freeI64(specific_rdx);