Subzero. ARM32. Enables obj output.

This CL implements two little pieces of the lowering that are needed
for --filetype=obj support in arm. With this change, spec2k builds and
verifies with --filetype=obj

BUG= https://bugs.chromium.org/p/nativeclient/issues/detail?id=4076
R=kschimpf@google.com, stichnot@chromium.org

Review URL: https://codereview.chromium.org/1651603003 .
diff --git a/src/IceTargetLoweringARM32.cpp b/src/IceTargetLoweringARM32.cpp
index 72ba954..f284f4d 100644
--- a/src/IceTargetLoweringARM32.cpp
+++ b/src/IceTargetLoweringARM32.cpp
@@ -6437,9 +6437,11 @@
   if (Ctx->getFlags().getDisableTranslation())
     return;
   switch (Ctx->getFlags().getOutFileType()) {
-  case FT_Elf:
-    UnimplementedError(Ctx->getFlags());
-    break;
+  case FT_Elf: {
+    ELFObjectWriter *Writer = Ctx->getObjectWriter();
+    Writer->writeConstantPool<ConstantFloat>(IceType_f32);
+    Writer->writeConstantPool<ConstantDouble>(IceType_f64);
+  } break;
   case FT_Asm:
   case FT_Iasm: {
     OstreamLocker _(Ctx);
@@ -6455,7 +6457,9 @@
     return;
   switch (Ctx->getFlags().getOutFileType()) {
   case FT_Elf:
-    UnimplementedError(Ctx->getFlags());
+    if (!Ctx->getJumpTables().empty()) {
+      llvm::report_fatal_error("ARM32 does not support jump tables yet.");
+    }
     break;
   case FT_Asm:
     // Already emitted from Cfg