Subzero: Improve class definition hygiene.

Delete zero-argument ctor where possible.

Delete default copy ctor and default assignment operator where possible (some were missed in the past).

(The above are not done to the cross tests because we aren't yet building them with C++11.)

Declare single-argument ctor as "explicit".

BUG= none
R=jfb@chromium.org

Review URL: https://codereview.chromium.org/952953002
diff --git a/src/IceRegAlloc.cpp b/src/IceRegAlloc.cpp
index d171005..7926123 100644
--- a/src/IceRegAlloc.cpp
+++ b/src/IceRegAlloc.cpp
@@ -95,7 +95,7 @@
   for (Variable *Var : Vars) {
     // Explicitly don't consider zero-weight variables, which are
     // meant to be spill slots.
-    if (Var->getWeight() == RegWeight::Zero)
+    if (Var->getWeight().isZero())
       continue;
     // Don't bother if the variable has a null live range, which means
     // it was never referenced.
@@ -167,7 +167,7 @@
       if (Inst.isDeleted())
         continue;
       if (const Variable *Var = Inst.getDest()) {
-        if (Var->hasReg() || Var->getWeight() == RegWeight::Inf) {
+        if (Var->hasReg() || Var->getWeight().isInf()) {
           if (LRBegin[Var->getIndex()] == Inst::NumberSentinel) {
             LRBegin[Var->getIndex()] = Inst.getNumber();
             ++NumVars;
@@ -179,7 +179,7 @@
         SizeT NumVars = Src->getNumVars();
         for (SizeT J = 0; J < NumVars; ++J) {
           const Variable *Var = Src->getVar(J);
-          if (Var->hasReg() || Var->getWeight() == RegWeight::Inf)
+          if (Var->hasReg() || Var->getWeight().isInf())
             LREnd[Var->getIndex()] = Inst.getNumber();
         }
       }