Replace hsail donor threads with hsail tlabs

--HG--
extra : rebase_source : 6bdbc87eb9d4027e23de2d5d7cb606988af80dbf
Outsource Value/StateProcedure classes into files.

--HG--
extra : rebase_source : 8e69addacab868357ad0dd6209c1fa10e82a3780
extra : amend_source : 5f2c0fe2e7957dd7627f8eaa7a7ed6541c207734
Introduce InstructionValueProcedureBase.

--HG--
extra : rebase_source : 12e760352adb70a5fa3241780bb2978457046879
Add InstructionValueConsumer and ValueConsumer.

--HG--
extra : rebase_source : b7f4930e90f6a86bb38ab0b7a6d0d84fa9025c27
Restrict access to internal forEach* in LIRInstructionClass and friends.

--HG--
extra : rebase_source : e85492e0c567fd41151a4efb8a478e093f33923f
Add LIRInstruction.visitEach{Input,Alive,Output,State}(InstructionValueConsumer).

--HG--
extra : rebase_source : 613fbe1e22d34be98bbf9b56dcb15b7d4fe31e2b
Use ValueConsumer in LinearScan where possible.

--HG--
extra : rebase_source : 46b2969f16e36e747f62ddc925f7a771e394cdb2
Use InstructionValueConsumer in RegisterVerifier.

--HG--
extra : rebase_source : f6f308db92f52e0795209295decca7037c18a0d0
Use ValueConsumer in LIRVerifier.

--HG--
extra : rebase_source : a75362b73185d5229978718411be7a57b6fe9cf6
Use InstructionValueConsumer in CompositeValueReplacementTests.

--HG--
extra : rebase_source : d2b781d38f3fb124401284bf1265c2b6e4148f20
Use ValueConsumer in HotSpotBackend.

--HG--
extra : rebase_source : b99a82e38dec44ee7bf5e9ba4d6fe135de149eec
Use ValueConsumer in RedundantMoveElimination.

--HG--
extra : rebase_source : 80d2a0a8655b83793cf925a7676251b47d2f3fd1
Assert that CompositeValues are not visited directly by ValueProcedures/ValueConsumers.

--HG--
extra : histedit_source : 7e1d122e52e68944f61e0389a52dc4e10764151e
HSAIL: remove register hint for ShiftOp.

Input can be a CompositeValue (HSAILAddressValue) which cannot be used
as register hint.

--HG--
extra : amend_source : 6065a4e25b46cfb369a49da54cebd55d4a83c82b
extra : histedit_source : f318afc6162dc6631cc6f9882a4a6154b66ebb2e
Truffle-DSL: fixed ElementUtils#getType should not throw NPE if type is not on the classpath.
Truffle-DSL: added caching for autoimports.
Truffle-DSL: added hashing for type lookups.
Truffle-DSL: optimized ElementUtils.typeEquals
Truffle-DSL: refined type system type caching
Truffle-DSL: refined autoimportCache organizeImports.