핫스팟이 컴파일 할 Java 메소드 (8000 바이트 코드에서)의 최대 크기를 늘리는 명령 행 매개 변수가 있습니까?Java 핫스팟 명령 줄 매개 변수는 Java 메소드의 최대 크기를 늘립니다.
답변
sources을 다운로드하고 이에 대한 디버그 플래그로 빌드해야 할 수도 있습니다 (확실하지 않습니다).
java -XX:+UnlockDiagnosticVMOptions -XX:-DontCompileHugeMethods
자세한 내용은 here를 찾을 수 있습니다.
당신은 내가 찾을 수 있습니다에 플래그 (수백)의 대부분을 생각하는 소스를 다운로드하는 경우
..hotspot/src/share/vm/runtime/arguments.cpp
hotspot/src/share/vm/runtime/globals.cpp
고맙습니다. 나는 인라인 할 메소드의 최대 크기를 찾고 있지는 않지만, 핫스팟으로 컴파일 할 메소드의 최대 크기를 찾고 있는데, 기본값은 8000입니다. 나는 그 파일들 중 하나에서 그것을 찾을 수 없지만, 나는 그러한 옵션의 막연한 기억을 가지고있다. – user1203021
아, 죄송합니다. 신중하게 읽지 못했습니다 :) 소스 파일에서 행운을 빌어 요. –
찾았습니다 ... -XX : -DontCompileHugeMethods – user1203021
당신은 컨텍스트에 대한 자세한 내용을 설명 할 수 있습니까? – kosa
기본적으로 나는 다른 언어의 크로스 컴파일러를 작성 중이며 현재 결과 메소드는 여전히 너무 많이 부풀어져 있지만 (때로는 50,000 바이트 이상의 바이트 코드) 핫스팟이 컴파일 될 때 속도를 측정하고 어떤 종류의 코드 핫스팟을보고 싶습니다. 내가 사용하고있는 구조물에 대한 출력. – user1203021
결과에서 얻을 수있는 유용한 정보가 너무 많지는 않습니다. HotSpot은 작은 방법으로 작업하는 것을 좋아합니다. 따라서 큰 방법으로이 작업을하려고하면 많은 것을 알지 못할 수도 있습니다. – kittylyst