S
- S character
- field descriptor meaning, 91
- saload instruction, 331
- sastore instruction, 332
- security
- See also access_flags item
- verification of class files, 124
- SecurityException, 39
- semantics
- attributes, optional, 107
- invokespecial instruction, access flag use to select alternatives, 86
- Java integer and floating-point operator support, 76
- Java types that have no direct integer arithmetic support, 75
- Java Virtual Machine, strategies for implementing, 82
- shadowing
- See overriding
- shift
- left int, ishl, 273
- left long, lshl, 305
- right int
- shift (cont.)
- arithmetic, ishr, 274
- logical, iushr, 278
- right long
- arithmetic, lshr, 306
- logical, lushr, 310
- short type
- converting int to, i2s, 237
- field descriptor specification, 91
- instruction set handling of, 72
- integer arithmetic not directly supported, 75
- loading from arrays, saload, 331
- pushing, sipush, 333
- storing into arrays, sastore, 332
- term definition, 58
- value range, 59
- signature
- term definition, 28
- sipush instruction, 333
- size
- heap, setting with -ms and -mx flags, JDK 1.0.2 implementation, 63
- Java stack, setting with -oss flag, JDK 1.0.2 implementation, 63
- local variables, 66
- method area, JDK 1.0.2 implementation constraints, 64
- native method stacks, setting with -ss flag, JDK 1.0.2 implementation, 65
- operand stacks, 67
- slashes (/)
- class name use, 89
- source code
- compiled, Java Virtual Machine assembly language examples, format, 340
- SourceFile_attribute structure
- (element of exception_table array of ClassFile structure), 108
- sourcefile_index item
- (SourceFile_attribute structure), 108
- StackOverflowError, 40
- as Java stack-related error, 62
- as native method stack-related error, 65
- stacks
- errors
- OutOfMemoryError, 65
- StackOverflowError, 62, 65
- Java, 62
- frames allocated from, 66
- size, setting with -oss flag, JDK 1.0.2 implementation, 63
- native method, 65
- JDK 1.0.2 implementation bug, 65
- size, setting with -oss flag, JDK 1.0.2 implementation, 63
- operand
- code verification, Pass 3 - bytecode verifier, 128
- data flow analysis, 126
- duplicating top, dup, 198
- duplicating top and put three down in, dup_x2, 200
- duplicating top and put two down in, dup_x1, 199
- duplicating top two words, dup2, 201
- duplicating top two words and put four down in, dup2_x2, 203
- duplicating top two words and put three down in, dup2_x1, 202
- frames used to hold, 67
- management instruction summary, 79
- maximum number of words, 111
- merging, during data-flow analysis, 130
- pop two words, pop2, 324
- pop word, pop, 323
- size limitation, 136
- structural constraints on instructions, 122
- swap top two words, swap, 334
- standards
- IEEE 754, 7
- adding double, conformance, dadd, 179
- adding float, conformance, fadd, 208
- comparing double, conformance, dcmpg, 183
- comparing double, conformance, dcmpl, 183
- comparing float, conformance, fcmpg, 211
- comparing float, conformance, fcmpl, 211
- dividing double, conformance, ddiv, 185
- dividing float, conformance, fdiv, 214
- float and double type, conformance, 59
- floating-point comparison, conformance, 80
- floating-point double format bit layout, high_bytes and low_bytes items, 98
- floating-point operation conformance to, 76
- multiplying double, conformance, dmul, 189
- multiplying float, conformance, fmul, 218
- remainder, drem not the same as the, drem, 192
- remainder, frem not the same as the, frem, 221
- subtracting double, conformance, dsub, 197
- subtracting float, conformance, fsub, 225
- UTF-8 format, bibliographic reference, 101
- start_pc item
- (element of exception_table array of Code_attribute structure), 112
- (element of line_number_table array of LineNumberTable_attribute structure), 116
- (element of local_variable_table array of LocalVariableTable_attribute structure), 117
- startup
- Java Virtual Machine, overview, 40
- state
- capture, frame use for, 66
- objects, persistent, transient variables not part of, 26
- term definition, 9
- of types, static initializer role in ensuring a consistent, 46
- static
- See also ACC_STATIC modifier
- fields
- get from classes, getstatic, 228
- get from classes, getstatic_quick, 399
- get from classes, getstatic2_quick, 400
- put into classes, putstatic, 327
- put into classes, putstatic_quick, 427
- put into classes, putstatic2_quick, 428
- initializers, 29
- as not members of a class, 25
- execution of during initialization, 46
- methods
- invoking, invokestatic, 265
- invoking, invokestatic_quick, 410
- stop method
- Thread
- as asynchronous exception cause, 37
- as exception cause, 35
- ThreadGroup as asynchronous exception cause, 37
- storage
- automatic management system, garbage collection as, 63
- data, frame use for, 66
- frame allocation, 66
- instructions, summary, 74
- requirements, Java Virtual Machine, platform independent characterization, 61
- runtime data areas
- constant pool, 64
- heap, 63
- Java stacks, 62
- method area, 63
- native method stacks, 65
- pc register, 61
- storing into
- arrays
- byte or boolean, bastore, 170
- char, castore, 173
- double, dastore, 182
- float, fastore, 210
- int, iastore, 241
- long, lastore, 288
- reference, aastore, 157
- short, sastore, 332
- local variables
- double, dstore, 195
- double, dstore_<n>, 196
- float, fstore, 223
- float, fstore_<n>, 224
- int, istore, 275
- int, istore_<n>, 276
- long, lstore, 307
- long, lstore_<n>, 308
- reference, astore, 165
- reference, astore_<n>, 166
- String class, 10
- string_index item
- (CONSTANT_String_info structure), 96
- String type, 6
- strings
- See also String class, CONSTANT_Utf8_info structure
- strings (cont.)
- constant pool resolution of, 148
- JDK 1.0.2 implementation bug, 148
- conversion context, 14
- String new instances creation triggered by, 49
- term definition, 6
- structures
- class file structures, 83
- subclass
- term definition, 25
- subpackages
- term definition, 21
- subroutine
- jump to
- jsr, 280
- wide index, jsr_w, 281
- return from, ret, 329
- subtracting
- double, dsub, 197
- float, fsub, 225
- int, isub, 277
- long, lsub, 309
- super_class item
- (ClassFile structure), 87
- super method
- term definition, 30
- superclasses
- See also ACC_SUPER modifier
- checking for, 126
- methods, invoking, invokesuper_quick, 408
- super keyword
- accessing, overridden methods with, 27
- accessing hidden fields with, 26
- super method as constructor invocation, 30
- term definition, 25
- superinterfaces
- term definition, 31
- swap
- operand stack words, swap, 334
- swap instruction, 334
- swapping
- swap instruction, operand stack manipulation constraints, 67
- threads example, 380
- symbolic references
- mapping to concrete values, constant pool resolution, (chapter), 139
- symbols
- See names
- synchronization
- See also ACC_SYNCHRONIZED modifier; threads
- exception handling integration with, 35
- instruction summary, 81
- Java Virtual Machine assembly language examples, 369
- locks, 386
- synchronized method
- double value return from, dreturn, 194
- float value return from, freturn, 222
- int value return from, ireturn, 272
- long value return from, lreturn, 304
- reference value return from, areturn, 163
- void return from, return, 330
- synchronized keyword
- methods, 29
- multithreaded actions, 53
- operations, 386
- specification, 386
- thread-memory interaction, ordering rules, 54
- syntax
- class file, 84
- class names references, 89
- ClassFile structure, 84
- descriptor grammar, 90
- system services
- transient variables potential role in, 26
Contents | Prev | Next | Index
Java Virtual Machine Specification
Copyright © 1996, 1997 Sun Microsystems, Inc.
All rights reserved
Please send any comments or corrections to jvm@java.sun.com