8247909: Improve PrimitiveConversions::cast using C++14

Reimpliment PrimitiveConversions::cast, with some cases now constexpr.
<!-- Anything below this marker will be automatically updated, please do not edit manually! -->
---------
### Progress
- [x] Change must not contain extraneous whitespace
- [x] Commit message must refer to an issue
- [ ] Change must be properly reviewed

### Issue
* [JDK-8247909](https://bugs.openjdk.java.net/browse/JDK-8247909): Improve PrimitiveConversions::cast using C++14


### Download
`$ git fetch https://git.openjdk.java.net/jdk pull/143/head:pull/143`
`$ git checkout pull/143`

Reviewed-by: dholmes, stefank
4 files changed
tree: 557fb73fc66830cdfea7584a9854feb7f148bc30
  1. .jcheck/
  2. bin/
  3. doc/
  4. make/
  5. src/
  6. test/
  7. .gitattributes
  8. .gitignore
  9. .hgignore
  10. .hgtags
  11. ADDITIONAL_LICENSE_INFO
  12. ASSEMBLY_EXCEPTION
  13. configure
  14. CONTRIBUTING.md
  15. LICENSE
  16. Makefile
  17. README.md
README.md

Welcome to the JDK!

For build instructions please see the online documentation, or either of these files:

See https://openjdk.java.net/ for more information about the OpenJDK Community and the JDK.