VM Spec

Contents | Prev | Next | Index | The JavaTM Virtual Machine Specification

symbols A B C D E F G H I J L M N O P Q R S T U V W Z

# L

L character

meaning in field or method descriptor, 101

L<classname>;

meaning in field or method descriptor, 101

l2d instruction

definition, 306

l2f instruction

definition, 307

ladd instruction

compilation examples, operand stack operations, 386
definition, 309

laload instruction

definition, 310

land instruction

definition, 311

lastore instruction

definition, 312

lcmp instruction

definition, 313

lconst_<l> instructions

compilation examples

accessing the runtime constant pool, 371
operand stack operations, 386

definition, 314

ldc instruction

compilation examples, accessing the runtime constant pool, 371
constraints, static, 135
definition, 315

ldc_w instruction

constraints, static, 135
definition, 316

ldc2_w instruction

compilation examples

accessing the runtime constant pool, 371
constants and local variables in a for loop, 367
while loop, 373, 374

constraints, static, 135
definition, 317

ldiv instruction

definition, 318

left angle bracket <

in CONSTANT_Methodref_info and CONSTANT_InterfaceMethodref_info names, significance of, 106

left parentheses (

meaning in method descriptor, 102

left square bracket [

meaning in field or method descriptor, 101

length item

(CONSTANT_Utf8_info structure), 111
(LocalVariableTable_attribute structure), 131

limitations

Java virtual machine, 152

line_number item

(line_number_table array of LineNumberTable_attribute structure), 129

line_number_table array

(LineNumberTable_attribute structure), 130

line_number_table_length item

(LineNumberTable_attribute structure), 130

LineNumberTable_attribute structure

(attributes table of Code_attribute structure), 129

LinkageError

definition, 49, 50
as unrecoverable runtime exception class, 44
verification pass 4 occurrence of, 143

linking

See also binding; preparation; resolution; verification
(chapter), 155
class files verification issues, 140
definition, 49, 164
dynamic, frame use for, 71
errors

IllegalAccessError, 45
InstantiationError, 45
LinkageError, as unrecoverable runtime exception class, 45
LinkageError, loading errors thrown by, 49
LinkageError, verification errors thrown by, 50
LinkageError, verification pass 4 occurrence, 143
NoSuchFieldError, 45
NoSuchMethodError, 45

overview, 47
unrecoverable runtime exceptions associated with, 44

literals

See also constants; strings; variables
definition, 6
false, 6
null, 6
strings, resolution of, 157
true, 6

lload instruction

definition, 319

lload_<n> instructions

definition, 320

lmul instruction

definition, 321

lneg instruction

definition, 322

loadClass method

ClassLoader class, loading of classes and interfaces by, 161

loading

See also class loader; linking; verification
(chapter), 155
class or interface, 158
class or interface, errors

ClassCircularityError, 164
IncompatibleClassChange- Error, 164
NoClassDefFoundError, 160, 163

constraints, 162
definition, 48
delegation, 159
from arrays of type

byte or boolean, baload, 188
char, caload, 191
double, daload, 200
float, faload, 230
int, iaload, 261
long, laload, 308
reference, aaload, 175
short, saload, 354

from local variables of type

double, dload, 207
double, dload_<n>, 208
float, fload, 237
float, fload_<n>, 238
int, iload, 274
int, iload_<n>, 275
long, lload, 319
long, lload_<n>, 320
reference, aload, 179
reference, aload_<n>, 180

overview, 46
unrecoverable runtime exceptions associated with, 44

local_variable_table array

(LocalVariableTable_attribute structure), 131

local_variable_table_length item

(LocalVariableTable_attribute structure), 131

local variables

See also parameters; variables
accessing, structural constraints on instructions, 138
code verification, Pass 3 - bytecode verifier, 143
compilation examples, 365
data-flow analysis, 142
definition, 14, 72
exception handling impact on, 79
instructions

for accessing more, summary, 83
load and store, summary, 83
specialized to handle, advantages of, 366

loading from

double, dload, 207
double, dload_<n>, 208
float, fload, 237
float, fload_<n>, 238
int, iload, 274
int, iload_<n>, 275
long, lload, 319
long, lload_<n>, 320
reference, aload, 179
reference, aload_<n>, 180

location of, 131
maximum number, 121
reuse, advantages of, 366
states, merging, during data-flow analysis, 145
storing into

double, dstore, 215
double, dstore_<n>, 216
float, fstore, 245
float, fstore_<n>, 246
int, istore, 299
int, istore_<n>, 300
long, lstore, 330
long, lstore_<n>, 331
reference, astore, 184
reference, astore_<n>, 185

LocalVariableTable_attribute structure

(Code_attribute structure), 130

locks

See also IllegalMonitorStateException; monitors; threads
(chapter), 397
ACC_SYNCHONIZED flag, field_info structure, 114
definition, 12, 59
errors, IllegalMonitorStateException thrown, 44
interaction with variables, rules about, 403
managing shared variables with, 31
multithreaded synchronization with, 60
rules about, 402
structured use of, 413
synchronization and, 412
synchronized method use of, 33

long type

adding, ladd, 309
ANDing, bitwise, land, 311
comparing, lcmp, 313
constant, CONSTANT_Long_info structure representation, syntax and item descriptions, 108
converting

double to, d2l, 197
float to, f2l, 227
int to, i2l, 258
to double, l2d, 306
to float, l2f, 307
to int, l2i, 308

definition, 62
dividing, ldiv, 318
loading

from arrays, laload, 310
from local variables, lload, 319
from local variables, lload_<n>, 320

multiplying, lmul, 321
negating, lneg, 322
ORing

bitwise, exclusive, lxor, 334
bitwise, inclusive, lor, 325

pushing

constants, lconst_<l>, 314
wide index, ldc2_w, 317

remainder, lrem, 326
returning from method invocation, lreturn, 327
shift left, lshl, 328
shift right

arithmetic, lshr, 329
logical, lushr, 333

storing into

arrays, lastore, 312
local variables, lstore, 330
local variables, lstore_<n>, 331

subtracting, lsub, 332
value range, 63

lookupswitch instruction

See also tableswitch instruction
code array alignment effect, 121
compilation examples, compiling switches, 385
constraints, static, 134
definition, 323

lor instruction

definition, 325

low_bytes item

(CONSTANT_Double_info structure), 108
(CONSTANT_Long_info structure), 108

lrem instruction

definition, 326

lreturn instruction

compilation examples, operand stack operations, 386
constraints, structural, 138
definition, 327

lshl instruction

definition, 328

lshr instruction

definition, 329

lstore instruction

constraints, static, 136
definition, 330

lstore_<n> instructions

compilation examples, accessing the runtime constant pool, 371
constraints, static, 136
definition, 331

lsub instruction

definition, 332

lushr instruction

definition, 333

lxor instruction

definition, 334

Contents | Prev | Next | Index

The JavaTM Virtual Machine Specification
Copyright © 1999 Sun Microsystems, Inc. All rights reserved
Please send any comments or corrections to jvm@java.sun.com