Enables llvm dyn_cast for Assemblers.

IceCfg::getAssembler() is a template that simply static_casts the CFG's assembler. This could potentially be problematic in the future, so we enabled the (relatively) cheap llvm dyn_cast operator for Assemblers.

This CL also renames assembler_mips32.h to IceAssemblerMIPS32.h.

BUG=
R=stichnot@chromium.org

Review URL: https://codereview.chromium.org/1211863004.
diff --git a/src/IceCfg.h b/src/IceCfg.h
index 83c4ddd..800bf40 100644
--- a/src/IceCfg.h
+++ b/src/IceCfg.h
@@ -127,7 +127,7 @@
   VariablesMetadata *getVMetadata() const { return VMetadata.get(); }
   Liveness *getLiveness() const { return Live.get(); }
   template <typename T = Assembler> T *getAssembler() const {
-    return static_cast<T *>(TargetAssembler.get());
+    return llvm::dyn_cast<T>(TargetAssembler.get());
   }
   Assembler *releaseAssembler() { return TargetAssembler.release(); }
   std::unique_ptr<VariableDeclarationList> getGlobalInits() {