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

AArch64: C1 StubFrames end confusingly

    XMLWordPrintable

Details

    • b23
    • aarch64

    Description

      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/

      Attachments

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

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