Refactor BuildInvoke.

BuildInvoke got to be too complex an unreadble. This breaks it down in
smaller pieces.

Change-Id: Ibda63f69f5a1be537ae13e18a5f67c361173f4a6
diff --git a/compiler/optimizing/nodes.h b/compiler/optimizing/nodes.h
index f2db330..2ed2d9a 100644
--- a/compiler/optimizing/nodes.h
+++ b/compiler/optimizing/nodes.h
@@ -3181,6 +3181,8 @@
     return dispatch_info_.direct_code_ptr;
   }
 
+  ClinitCheckRequirement GetClinitCheckRequirement() const { return clinit_check_requirement_; }
+
   // Is this instruction a call to a static method?
   bool IsStatic() const {
     return GetInvokeType() == kStatic;