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

# D

D character

meaning in field or method descriptor, 101

d2f instruction

definition, 195

d2i instruction

definition, 196

d2l instruction

definition, 197

dadd instruction

compilation examples

constants and local variables in a for loop, 367, 368
while loop, 373

definition, 198

daload instruction

definition, 200

dastore instruction

definition, 201

data

areas, runtime

constant pool, 70
heap, 68
Java virtual machine stack, 67
method area, 69
native method stacks, 70
pc register, 67

types, Java virtual machine, 61

data types

See also

boolean type
byte type
char type
constant_pool table
double type
fields table
float type
int type
integral
long type
null type
reference type
returnAddress type
short type
String type

arguments, structural constraints on instructions, 137
checking

checkcast, 193
instanceof, 278

conversion

and numeric promotion impact on, 16
instructions, 86

Java programming language

categories, 7
classes compared with, 15
numeric, 7
primitive, 7

Java virtual machine

instruction set encoding of, 80
mapping between storage types and computational types (table), 82
support for (table), 82

data-flow analysis

code array, 141
running, Pass 3 - bytecode verifier, 144

dcmp<op> instructions

compilation examples

constants and local variables in a for loop, 367
while loop, 373, 374

compilation examples, while loop, 374
definition, 202

dconst_<d> instructions

compilation examples

constants and local variables in a for loop, 367
while loop, 373

definition, 204

ddiv instruction

definition, 205

debugging

breakpoint reserved opcode, 172
Java virtual machine implementation issues, 92

defineClass method

ClassLoader class, creation of classes and interfaces by, 161

delegation

to another class loader, 159

denormalized numbers

definition, 11

Deprecated_attribute structure

(attributes table of field_info, method_info, or ClassFile structures), 132
(field_info structure), 114

descriptor_index item

(CONSTANT_NameAndType_info structure), 110
(field_info structure), 114
(LocalVariableTable_attribute structure), 130
(method_info structure), 115

descriptors

characteristics and use, 99
field

structural constraints on instructions, 137, 138
syntax and item descriptions, 99
as value of CONSTANT_Utf8_info structure referenced by descriptor_index item, CONSTANT_NameAndType_info structure, 110
as value of CONSTANT_Utf8_info structure referenced by descriptor_index item, field_info structure, 114

grammar for specification of, 99
method

argument number limitation, 153
syntax and item descriptions, 102
as value of CONSTANT_Utf8_info structure referenced by descriptor_index item, CONSTANT_NameAndType_info structure, 110

direct

directly implement, 35
extension, 35
subclass, 29
superclass, 29

dividing

double, ddiv, 205
float, fdiv, 235
int, idiv, 265
long, ldiv, 318

dload instruction

constraints, static, 136
definition, 207

dload_<n> instructions

compilation examples

constants and local variables in a for loop, 367, 368
while loop, 373

constraints, static, 136
definition, 208

dmul instruction

definition, 209

dneg instruction

definition, 211

double type

See also floating-point
adding, dadd, 198
comparing, dcmp<op>, 202
compilation examples, 367
converting

float to, f2d, 225
int to, i2d, 256
long to, l2d, 306
to float, d2f, 195
to long, d2l, 197

definition, 62
dividing, ddiv, 205
double value set, 63
double-extended-exponent value set, 64
field descriptor specification, 100
loading from

arrays, daload, 200
local variables, dload, 207
local variables, dload_<n>, 208

multiplying, dmul, 209
negating, dneg, 211
pushing constants, dconst_<d>, 204
pushing, wide index, ldc2_w, 317
remainder, drem, 212
representation in constant pool, 109
returning from method invocation, dreturn, 214
storing into

arrays, dastore, 201
local variables, dstore, 215
local variables, dstore_<n>, 216

subtracting, dsub, 217

double value set

definition, 63
parameters (table), 64

double-extended-exponent value set

definition, 64
parameters (table), 64

drem instruction

definition, 212

dreturn instruction

compilation examples, constants and local variables in a for loop, 368
constraints, structural, 137
definition, 214

dstore instruction

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

dstore_<n> instructions

compilation examples

constants and local variables in a for loop, 367
while loop, 373

constraints, static, 136
definition, 216

dsub instruction

definition, 217

dup instruction

compilation examples

arrays, 383
operand stack operations, 386
throwing exceptions, 387
working with class instances, 379

definition, 218

dup instructions

operand stack manipulation constraints, 73

dup_x1 instruction

definition, 219

dup_x2 instruction

definition, 220

dup2 instruction

definition, 221

dup2_x1 instruction

compilation examples

operand stack operations, 386

definition, 222

dup2_x2 instruction

definition, 223

duplicating

See also dup instructions
operand stack value(s)

dup, 218
dup_x1, 219
dup_x2, 220
dup2, 221
dup2_x1, 222
dup2_x2, 223

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