Create OpenJDK without "code too large".

Remi Forax forax at univ-mlv.fr
Sat Sep 20 08:57:39 UTC 2014


On 09/19/2014 06:57 PM, Alex Buckley wrote:
> On 9/19/2014 8:51 AM, Remi Forax wrote:
>> Technically, it's more a limitation of the classfile format (.class)
>>  than the VM, you can not have more than 65535 bytecode instructions
>> by method.
>
> The relevant ClassFile limit is in the Code attribute, but it's not 
> the u4 code_length item. It's the exception_table item which describes 
> the extent of exception handlers with u2 items. See JVMS8 4.7.3.

also several Code attributes (LineNumberTable, LocalVariableTable, ...) 
use a 16 bits value as index (usually named start_pc) into the bytecode 
array limiting in practice the bytecode array to a size of 65535.

>
> Alex

Rémi




More information about the discuss mailing list