Allow move semantics on Labels
The Label class currently allows to be copied on all platforms except for arm64, where it can not be copied or moved. This allows too much though: Copying a label even on another platform than arm64 might fail if the label was linked already, because only one of the copies will be bound later, and the other will fire a DCHECK error in its destructor. This CL changes the restriction to never allow to copy construct or assign a Label, but allow move construction and move assignment on all platforms except arm64. This will allow to place Labels in containers, as will be done in Liftoff (except for arm64, where it still needs to be allocated on the heap). R=mstarzinger@chromium.org Bug: v8:6600 Change-Id: Ic1234c2d233317eed6a3d537c13faed2c701fe13 Reviewed-on: https://chromium-review.googlesource.com/783190 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#49570}
Showing
Please
register
or
sign in
to comment