-
Ng Zhi An authored
Previously SharedTurboAssembler was a base class for ia32 and x64 TurboAssembler. This made it easy to share code, only if the implementation was the same. In some cases, like ExternalReferenceAsOperand, the implementation defers slightly between the two architectures. We add a new class template SharedTurboAssemblerBase, which derives from SharedTurboAssembler. Using the CRTP pattern, we can call derived classes functions using the template parameter. For any function that is exactly the same, we can declare them in the header and define them in the cc file, instead of inlining them all into the header. Bug: v8:11589 Change-Id: I9319bd0c26c76995cef43ae5ec3f69392b3f825b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3097109 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/main@{#76469}
ce814692