If we fail to find an appropriate disassembler, we're just going to segfault
ourselves in the handle_sigsegv() anyway.  Let's not do that.
                 dontcare);
         if (!target) {
                 fprintf(stderr, "Cannot find target\n");
+                return;
         }
 
         llvm::MCSubtargetInfo* sti = target->createMCSubtargetInfo("", "", "");
         if (!sti) {
                 fprintf(stderr, "Couldn't create subtarget info\n");
+                return;
         }
         disassembler = target->createMCDisassembler(*sti);
         if (!disassembler) {
                 fprintf(stderr, "Couldn't create disassembler\n");
+                return;
         }
 
         fprintf(stderr, "Set up signals\n");