簡體   English   中英

JVM PC計數器和堆棧空間如何與JIT一起使用?

[英]How does JVM PC counter and stack space work with JIT?

當Java方法被JIT編譯並開始運行JIT版本的本機代碼時:

  1. 堆棧空間是否與在解釋器模式下運行的堆棧空間相同?
  2. 在JIT模式下運行時PC計數器仍在更新嗎? 如果是這樣,怎么辦?

(假設我們正在使用OpenJDK)。

堆棧空間是否與在解釋器模式下運行的堆棧空間相同?

調用堆棧是相同的。 交換JIT版本的代碼時,它不會重建堆棧。

但是,可以將值堆棧分配給寄存器,因此不能用本機代碼維護。

在JIT模式下運行時PC計數器仍在更新嗎? 如果是這樣,怎么辦?

CPU的PC計數器在純模式下使用。 虛擬寄存器在本地優化代碼中是名義上的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM