v8/tools/torque
Daniel Clifford 79605b4508 [torque] Add new and refine existing Torque intrinsic support
Intrinsic changes:

- Rename %RawCast to %RawObjectCast and add error checking so that it
  only applies to subtypes of Objects.

- Add %RawPointerCast, which is similar to %RawObjectCast but must be
  used for all subtypes of RawPtr.

- Add %RawConstexprCast, which allows one constexpr to be be cast to
  another at compile time. It translate to an appropriate static_cast
  in the generated code

- Add %FromConstexpr, which handles most of the standard cases of
  generating XXXConstant CSA nodes from constexpr constants. It uses
  either SmiConstant, NumberConstant, StringConstant, IntPtrConstant
  or Int32Constant, depending on the cast-to type generic <To> type.

- Add support for intrinsics that return constexpr results.

Cleanup:

- Turn FromConstexpr into a generic with two generic types, a <To> and
  a <From> type. Most FromConstexpr can use the new %FromConstexpr
  intrinsic rather than provide an explicit implementation.

Bug: v8:7793
Change-Id: Icab5db16d203034ec157fa3ad5157d10c7dc8464
Reviewed-on: https://chromium-review.googlesource.com/c/1357049
Commit-Queue: Daniel Clifford <danno@chromium.org>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#58049}
2018-12-05 19:06:56 +00:00
..
vim-torque Reland "[torque] Implement intrinsics support" 2018-11-22 08:59:39 +00:00
vscode-torque Reland "[torque] Implement intrinsics support" 2018-11-22 08:59:39 +00:00
format-torque.py [torque] Add new and refine existing Torque intrinsic support 2018-12-05 19:06:56 +00:00
make-torque-parser.py [torque] Remove try/catch (only support try/label) 2018-06-04 19:55:02 +00:00