Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8267098

AArch64: C1 StubFrames end confusingly

XMLWordPrintable

    • b23
    • aarch64

      For many of the C1 StubFrames, the code generated often includes an additional leave/ret after the stub has completed:

      handle_exception_from_callee_id:
      *leave
      *ret
      *leave
      *ret

      Anything using generate_exception_throw:
      *br x8
      *should_not_reach_here
      *leave
      *ret

      In addition in generate_handle_exception(), after obtaining the return value, the value is stored on the stack then the stack then almost immediately is popped to LR. Instead the return value could be directly put into LR, saving a load/store. If/when PAC is implemented this causes an additional issue as the the value needs to be signed then unsigned when going on/off the stack.

      These issues are not causing any bugs, but they do make the code unclear, especially when debugging the outputted assembly/

            ahayward Alan Hayward
            ahayward Alan Hayward
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:

                Estimated:
                Original Estimate - 3 days
                3d
                Remaining:
                Remaining Estimate - 3 days
                3d
                Logged:
                Time Spent - Not Specified
                Not Specified