Avoid repeated lowering of convert nodes on AMD64

--HG--
extra : rebase_source : f2a8b6d2723038e5272f404f6cd4434fbc63d1ce
extra : amend_source : 459e14563955f194bac4e5804cbaf878b72d3ebf
mx: graal.jar is not silently updated anymore in the vm function
mx: don't include jdk build directory in path for vmdir
Factor out arithmetic operations to separate LIR generator interface.
Use ArithmeticLIRGenerator in arithmetic nodes.
Move MathIntrinsic operations to ArithmeticLIRGenerator.
Fix PTX test to prevent crash; trivial code cleanup
Defer PTX on Mac probe to the CUDA driver initialization call
enhanced select_items to support multiple selections
Javadoc fix.
Produce sensible error message when node is not LIRLowerable.
mx presents a command line dialogue to select the default VM if it is not configured (GRAAL-416)
added prompt to build missing VM the first time it is executed
cleaner support using 'with' statement for switching the configured VM within a scope
Merge.
removed overly conservative re-anchoring in ConditionalEliminationPhase
fixed misleading comment
made instanceof lowering happen after guard lowering
added dialogue for determining JAVA_HOME if it's not set
absence of IDE_BUILD_TARGET environment variable prevents HotSpot builds when editing C++ sources in Eclipse
New Truffle API methods for efficient implementation of a custom type system on top of the JVM.
Bailout of iterative conditional elimination phase in case the number of iterations exceeds specific threshold.