[Lilliput] Properly set ZF on anon-check path; avoid some conditional branches

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: P2
    • repo-lilliput
    • Affects Version/s: repo-lilliput
    • Component/s: hotspot
    • None
    • aarch64
    • generic

      In AArch64's fast_unlock(), we need to check if the monitor owner is ANONYMOUS (only with Lilliput/fast-locking), and if so, call the runtime to fix this before exiting the monitor. I tried to be smart and used tbnz there, but it turns out that tbnz does *not* set the zero flag, but we do need the ZF set correctly on exit of fast_unlock, so that C2 generated code would actually call the slow path. Therefore we need to use the longer tst/br instructions instead.

            Assignee:
            Roman Kennke
            Reporter:
            Roman Kennke
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: