• Andreas Haas's avatar
    Reland: [refactoring] Remove the isolate from signatures of ExternalReferences · 2a3c2c73
    Andreas Haas authored
    I missed one required change which was hidden behind an #if. The fix is in
    the diff between Patch 1 and Patch 3.
    
    Original message:
    In this CL I remove the isolate from signatures of ExternalReference
    accessor functions where the isolate is not used. The uses of the
    isolate were already removed in previous CLs.
    
    Changes:
    * I split the ExternalReference list in external-reference.h into
    those which need the isolate for initialization and those which do not.
    
    * I removed the public constructors and replaced them by
      ExternalReference::Create(). The reason is to separate external
      creation more clearly from internal creation, because externally
      created ExternalReferences sometimes need redirection, whereas
      internally created ExternalReferences are just stored as they are.
      In addition, by removing the isolate from the signature of the
      public constructors, they suddenly exactly matched the interal
      constructor.
    
    * Replace all uses of the public constructors with
      ExternalReference::Create().
    
    * Remove the isolate from all call sites where necessary.
    
    
    This is a step towards making WebAssembly compilation independent of
    the isolate.
    
    R=mstarzinger@chromium.org
    
    Bug: v8:7570
    Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
    Change-Id: I750c162f5d58ed32e866722b0db920f8b9bd8057
    Reviewed-on: https://chromium-review.googlesource.com/1026673Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
    Commit-Queue: Andreas Haas <ahaas@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#52777}
    2a3c2c73
macro-assembler-ia32.cc 52.1 KB