TOC PREV NEXT INDEX DOC LIST MASTER INDEX



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

Ada Compiler Reference Index

A

access type
reclaiming storage 233
sizes 224, 294
activate
section of source text 78
Ada
main program 202, 277
preprocessor
introduction 61
language 62
see also preprocessor
Ada calling sequence
Alpha 245
ADA_LINK_MODE switch 50
Ada83
implementation-defined pragmas 182
address clause 233
initialize variables 199
address conversion and coalescing optimization algorithms 26
address simplification optimization algorithms 26
advanced instruction sets 33
alarm call 42
alignment_clause 292
alignmnent
types and objects in Ada 83 222
types and objects in Ada 95 292
Alpha
Ada calling sequence 245
analyze closure 90
API
ADA_LINK_MODE switch
50
Application Program Interface 45
BUILD_POLICY switch 47
building step-by-step 46
CREATE_ARCHIVED_LIBRARY switch 49
CREATE_SHARED_LIBRARY switch 49
LIBRARY_NAME switch 49
Root View Switches 49
shared libraries 45
SHARED_LIBRARY_NAME switch 50
API Builder 52
SUBSYSTEM_NAME switch 53
Switch File 58
Api pragma 182
API Views 57
API views with dependencies 58
APP
Ada preprocessor language 62
Application Program Interface (API) 45
assembly language 12
machine code insertions 112
Assert pragma 182, 184
Assertion_Error exception 185, 269
Assertion_Policy pragma 172
assignment statements
preprocessor 78
ast_Rendezvous_Enabled 204, 278
at_clause 292
attribute_definition_clause 292
attributes 212
Compiler_Key 212, 285
Compiler_Version 213, 286
Dope_Address 213, 286
Dope_Size 213, 286
Duration 217
Entry_Number 213, 286
Floating Point types 215
for integer types 214
Homogeneous 214, 287
Integer Types 214
preprocessor 72
Type_Key 214, 287

B

big-endian
bit numbering 225, 295
bit numbering 225, 295
BND 24
Boolean type
preprocessor 69
Branch prediction 33
branch target alignment 32
BUILD_POLICY switch 47
building a simple API 46

C

C language
compiling 13
output 5
C_FLOATING_POINT_CONTROL 12
calling conventions
example to C program 252
machine code insertions 259
Calling_Convention pragma 10, 182, 269
case statement
preprocessor 80
catch
numeric errors 204, 279
change
representation 233
check
code rules 91
closure sets
Ada compilation 90
CMVC
non-Ada 3
code
size 19
code closure 90
code generator optimizations 31
code hoisting optimization algorithms 27
Code Rule Checker 91
customize 96
predefined code rules 92
syntax 91
code size
optimize for 16
coding
mixed-language 5
coding strategies 15
Collection_Initial_Size 203, 278
Collection_Policy pragma 182, 189
common sub-expression elimination optimization algorithms 26
compilation
Ada
closure sets 90
overview 89
states 89
compilation speed
optimize for 16
'Compiler_Key attribute 2, 212, 285
'Compiler_Version attribute 2, 212, 213, 285, 286
components
primary in preprocessor 61
conditional compilation
preprocessor 66
Concurrent_Processing_Policy pragma 172
conditional processing
preprocessor 78
configuration pragmas 171
pragma Assertion_Policy 172
pragma Concurrent_Processing_Policy 172
pragma Discard_Names 172
pragma Import_Directive 172
pragma Inlining_Policy 172
pragma Locking_Policy 172
pragma Normalize_Scalars 172
pragma Optimize 172
pragma Profile 172
pragma Queuing_Policy 172
pragma Restrictions 172
pragma Suppress 172
pragma Suppress_Elaboration_Checks 172
pragma Task_Dispatching_Policy 172
pragma Unsuppress 172
pragma unit 171
pragmas supported 171
constant declarations
examples in preprocessor 67
control flow optimization algorithm 29
control lines
preprocessor 63
Controlled pragma 180
Convention pragma 9, 267
conversions
type in preprocessor 77
Count type
Direct_Io.Count 237
CREATE_ARCHIVED_LIBRARY switch 49
CREATE_SHARED_LIBRARY switch 49
customize
code rule checker 96

D

data
passing 2
Data_Error exception 236
Dbg_Suspend_Disabled_Flag 203, 278
DCE 23
deactivate
section of source text 78
dead code elimination
optimization 23
deadlock 42
debugger
multitasking breakpoints 203, 278
debugging
C code 13
inlines 20
non-Ada 4
optimized code 20
signals used in 40
debugging ability
optimize for 16
DEC Alpha
machine code insertions 142
declarations
preprocessor 66
scope 84
declarative region
preprocessor 84
declare statement
preprocessor 81
define
global symbolic name for elaboration procedure 191, 274
definition
implicit code 275
delay slots 32
delimiters
preprocessor 63
dependencies
API views 58
Direct_Io
specifications 237
Discard_Names pragma 172
discrete types
length clauses 224
representation item 294
dope vector
address 213, 286
size 213, 286
dope vector address
parameter passing 258
'Dope_Address attribute 2, 212, 213, 285, 286
'Dope_Size attribute 2, 212, 213, 285, 286
Duration type
fixed point values 217
Standard.Duration 221

E

editing non-Ada 3
Elaborate pragma 180
elaboration checks
during export 193
suppress 211, 282
suppressing 211, 282
elaboration code in a mixed-language program 4
entry with address clause 233
'Entry_Number attribute 212, 213, 285, 286
enumeration type sizes 225, 294
Error pragma 83
errors
about pragmas 180
in representation clauses 224
evaluation
expressions in preprocessor 75
evaluation reordering
optimization 24
EVO 24
example
expressions in preprocessor 74
interface to C function 252
numeric type conversion in preprocessor 77, 78
preprocessor comments 64
preprocessor declarations and visibility 87
preprocessor identifiers 64
preprocessor numeric literals 64
preprocessor string literals 64
primaries in preprocessor 74
string type conversion in preprocessor 78
Exception_Stack_Size 203, 278
exceptions
conditional 184
floating-point 42
signals for 40
execution speed 19
optimize for 16
explicit separator
preprocessor 63
Export pragma 8, 267
Export_Elaboration_Procedure 191, 274
Export_Elaboration_Procedure pragma 182
Export_Function pragma 182, 191
Export_Object pragma 182
Export_Procedure pragma 182
expression evaluation
preprocessor 75
expressions
preprocessor 73
preprocessor example 74
extend
collection 203, 278
heap 204, 278
External pragma 182, 194
External_Name pragma 182, 195

F

'First attribute 215
fixed-point type sizes 221, 224, 294
FLOATING_POINT_CONTROL 12
floating-point
errors 42
exceptions 42
type sizes 221, 224, 294
Floating-Point Types 215
__FP_CONTROL_FOR_ADA 12
__FP_CONTROL_FOR_C 12
free list 234
front-end optimizations 21
dead code elimination 23
evaluation reordering 24
goto elimination 22
inline expansion 21
object binder 24
tail recursion elimination 23
unreferenced code elimination 23
useless code removal 23

G

generics
constraining private types 207
exporting and importing 198
formal identifier 213, 286
Get procedure
Text_Io.Get 238
Get_Line procedure
Text_Io.Get_Line 238
goto elimination
optimization 22
GTE 22

H

heap space 204, 278
Heap_Extend 204, 278
Heap_Size 204, 278
'Homogeneous attribute 212, 214, 285, 287
HP-PA
machine code insertions 132

I

Idle_Stack_Size 204, 278
ieee_flags call 41
ieee_handler call 41, 42
if statement
preprocessor 79
Ignore_Invalid_Rep_Specs switch 224
Ignore_Unsupported_Rep_Specs switch 224
ILX 21
implicit code
definition 275
Implicit_Code pragma 195, 275
import
Ada view into C/C++ view 3
Import pragma 6, 267
Import_Directive pragma 172
Import_Function pragma 181, 183
Import_Object pragma 183, 199
Import_Procedure pragma 181, 183
inactivate
section of source text 78
include
files in a compilation 82
Include pragma 82
inline expansion
always perform 200
never perform 199
optimization 21
Inline pragma 181
Inline_Never pragma 183, 199
Inline_Only pragma 183, 200
inlined code
debugging 20
Inlining_Policy pragma 172
instruction scheduling 32
instructions sets 33
INTEGER type
preprocessor 69
integer type sizes 221
Integer Types 214
Intel Architecture
machine code insertions 151
Interface pragma 181
use 197
Interface_Name pragma 183
interfacing pragmas 5, 267
introduction
machine code insertions 112
invocation
preprocessor 61
I/O
files, default 237
Form parameter 205, 237, 279
nonblocking 40, 204, 279
packages 205, 279
issue
error 83
warning 83

L

'Last attribute 215
lexical elements
preprocessor language 63
library views 47
LIBRARY_NAME switch 49
License pragma 183, 201, 276
link closure 90
Link_With pragma 14, 183
Linker_Options 13
Linker_Options pragma 13, 202, 267
linking
automatic 206, 281
mixed-language 5, 13
List pragma 181
little-endian
bit numbering 225, 295
Locking_Policy pragma 172
Long_Integer'First 215
Long_Integer'Last 215
Long_Integer'Size 215
longjmp call 41, 42
Low_Level_Io package 236, 237

M

machine code 261
machine code Insertions
HP-PA 132
machine code insertions
calling conventions 259
DEC Alpha 142
implicit code generation 275
Intel Architecture 151
introduction 112
M68k Family 157
optimization 281
PowerPC 138
pragma Implicit_Code 275
pragma Optimize_Code 281
RH-32 164
RS/6000 112
SGI MIPS 127
Sun SPARC 117
Machine_Code 112
macro substitution
preprocessor 85
Main pragma 40, 183
memory optimization algorithms 29
Memory_Size pragma 181
merge bit optimization algorithms 28
middle-pass optimizations 24
algorithms 24
propagation 25
MILO 21
Must_Be_An_Entry 207
Must_Be_An_Entry pragma 183
Must_Be_Constrained pragma 183

N

names
preprocessor 70
simple preprocessor 71
names, implementation-generated 233
naming convention
preprocessor 61
Non_Ada_Linkage switch 13
non-Ada
CMVC 3
debugging 4, 13
editing 3
main entry point 4
Nonblocking_Io 204, 279
non-library views 47
Normalize_Scalars pragma 172
normalization optimization algorithms 29
Not_Elaborated pragma 183, 208
numeric errors
catch 204, 279
numeric type conversions
preprocessor 77
Numeric_Signal_Enabled 204, 279

O

.o files
generating 13
object
alignment (Ada 83) 222
alignment (Ada 95) 292
preprocessor defined entity 66
object binder
optimization 24
ollection_Extension_Size 203, 278
OMIT_PREPROCESSOR_DIRECTIVES switch 83
optimization
algorithms 24
code generator 31
dead code elimination 23
evaluation reordering 24
front end 21
goto elimination 22
inline expansion 21
middle pass 24
object binder 24
overview 15
process detail 21
process overview 21
propagation optimization algorithm 25
set factors 17
set level 17
set objective 19
tail recursion elimination 23
unreferenced code elimination 23
useless code removal 23
optimization level 16, 17
optimization objective 16, 19
setting 19
OPTIMIZATION_LEVEL switch 17
OPTIMIZATION_OBJECTIVE switch 19
optimize
time-critical sections beyond compiler capability 112
Optimize pragma 19, 172, 181
Optimize_Code pragma 281
optimizing code 15
overview
Ada compilation 89

P

Pack pragma 181, 224, 294
packages
Machine_Code 112
Page pragma 181
parallel initiation 32
parameter passing 238
Alpha Architecture 243
HP-PA 246
IBM RS/6000 248
Intel Architecture 260
M68k Family 251
MIPS Family 256
PowerPC Family 253
RH-32 258
Sun SPARC (32-bit) 239
Sun SPARC (64 bit) 241
parameters, passing between Ada and C 12
PDEFINED' 72
peephole optimization 33
PIMAGE' 72
PLENGTH' 72
POSIX
compliance 40, 204, 237, 238, 279
Posix_Compliant 204, 279
PowerPC
machine code insertions 138
pragma
Assertion_Policy 172
Concurrent_Processing_Policy 172
Convention 267
Discard_Names 172
Export 267
Import 267
Import_Directive 172
Inlining_Policy 172
interfacing 267
Linker_Options 267
Locking_Policy 172
Normalize_Scalars 172
Optimize 172
Profile 172
Queuing_Policy 172
Restrictions 172, 209
Suppress 172
Suppress_Elaboration_Checks 172, 211, 282
Task_Dispatching_Policy 172
Unsuppress 172
pragma Optimize 19
pragma unit
configuration pragmas 171
pragma.1.ada 171
pragmas
Ada83 179
Api 184, 268
Assert 184, 268
Calling_Convention 10, 185, 269
Collection_Policy 189, 273
configuration 171
Convention 9
Error 83
error handling 180
Export 8
Export_Elaboration_Procedure 191, 274
Export_Function 191
Export_Object 191
Export_Procedure 191
External 194
External_Name 195
implementation-defined in Ada83 182
Implicit_Code 195, 275
Import 6
Import_Function 196
Import_Object 196
Import_Procedure 196
Include 82
Initialize 198, 276
Inline_Never 199
Inline_Only 200
Interface_Name 200
interfacing 5
License 201, 276
Link_With 14, 202
Linker_Options 13, 202, 276
list for Ada83 182
Main 202, 277
Must_Be_An_Entry 207
Must_Be_Constrained 207
Not_Elaborated 208
Optimize_Code 281
predefined for Ada83 180
preprocessor 82
Restrictions 172, 209
Signal_Handler 209
Suppress_All 210
Suppress_Elaboration_Checks 172, 211, 282
Warning 83
predefined code rules 92
predefined operators
preprocessor 75
predefined pragmas
Ada83 180
predefined variables
macro substitutions 67
preprocessor
activate source text 78
assignment operations 67
assignment statements 78
attributes 72
BOOLEAN type 69
case statement 80
comments example 64
conditional processing 78
conditional-compilation 66
control lines 61
declaration visibility 84
declarations 66
declarative region 84
declare statement 81
defined identifier 66
delimiters 63
example (extended) 87
example of constant declarations 67
example of expressions 74
example of numeric type conversion 77, 78
example of primaries 74
example of string type conversion 78
example of variable declarations 67
explicit separator 63
expressions 73
file naming conventions 61
hidden declaration 84
identifier examples 64
if statement 79
image of integer value 72
inactivate source text 78
INTEGER type 69
introduction 61
invocation 61
lexical elements 63
local object declaration syntax 67
macro substitution 85
names 70
number of components in object 72
numeric literals example 64
numeric type conversions 77
object 66
only declared entity 66
PDEFINEDattribute' 72
PIMAGEattribute' 72
PLENGTHattribute' 72
pragma Error 83
pragma INCLUDE 82
pragma WARNING 83
pragmas 82
predefined operators 75
primary components 61
program structure 66
PVALUEattribute' 72, 73
range of a slice 71
REAL type 69
reference chapter 62
regions 84
reserved words 64
scope of declarations 84
simple names 71
slice 71
slice range 71
statement 66
string literals example 64
STRING type 70
string type conversions 77
syntax and semantics of language 62
syntax of control lines 61
TEXT type 70
type conversions 77
types 68
value of a type 72, 73
variables 67
visibility 84
preprocessor macros
predefined variables 67
primaries
preprocessor example 74
priority
task 205, 280
time slice 205, 280
Priority pragma 181, 205, 280
Profile pragma 172
program structure
preprocessor 66
propagation optimization algorithm 25
Put procedure
Text_Io.Put 238
Put_Line procedure
Text_Io.Put_Line 238
PVALUE' 72, 73

Q

Queuing_Policy pragma 172

R

range check elimination optimization algorithm 28
Read procedure
Direct_Io.Read 237
Sequential_Io.Read 236
REAL type
preprocessor 69
reclaiming space 234
record types
representation clauses 225, 295
reference chapter
preprocessor 62
regions
preprocessor 84
register usage optimization 32
registers
parameter passing 251, 258
REJECT_BAD_LRM_PRAGMAS switch 180
REJECT_BAD_RATIONAL_PRAGMAS switch 180
REJECT_UNDEFINED_PRAGMAS switch 180
representation specifications 222 233
reserved words
preprocessor 64
Restrictions pragma 172, 209
result delays 32
Root View Switches
API 49
root view switches 49
RS/6000
machine code insertions 112
runtime checks
suppress 210

S

scheduling 42
preemptive 40, 42, 205, 280
time-slice 40, 205, 280
scope of declarations
preprocessor 84
semantic errors 208
semantics
preprocessor language 62
Sequential_Io package 236
set
optimization level 17
optimization objective 19
setitimer call 41, 42
setjmp call 41, 42
SGI MIPS
machine code insertions 127
shared libraries
API 45
Shared pragma 181
SHARED_LIBRARY_NAME switch 50
Short_Integer'First 214
Short_Integer'Last 214
Short_Integer'Size 214
SIGALRM signal 39, 40, 42
SIGFPE 204, 279
sigfpe call 41, 42
SIGFPE signal 39, 40
SIGILL signal 39, 40
SIGIO signal 39, 40
siglongjmp call 41, 42
signal call 42
signal stack
size 205, 279
Signal_Handler pragma 183, 209
Signal_Stack_Task_Size 205, 279
signals
UNIX 39
SIGSEGV 205, 279
sigsetjmp call 41, 42
sigstack call 41, 43
SIGTRAP signal 39, 40
sigvec call 42
simple names
preprocessor 71
size
collection 203, 278
heap 204, 278
idle stack 204, 278
task stack 205, 280
task storage 205, 280
trace buffer 206, 280
wait_stack 206, 280
'Size attribute 215, 224, 294
slice
preprocessor 71
'Small attribute 225, 294
stack
Wait 206, 280
stack size 205, 279, 280
Stack_Size 205, 279
Standard package 220
statement
preprocessor 66
states
Ada compilation 89
stdout
mixed-language 5
storage
unchecked deallocation 233
Storage_Error exception 190, 234, 274
Storage_Signal_Enabled 205, 279
'Storage_Size attribute 224, 294
effect on access type collection 190, 274
Storage_Unit pragma 181
STRING type
preprocessor 70
string type conversions
preprocessor 77
substitution
macro 85
subsystem for non-Ada code 4
SUBSYSTEM_NAME switch 53
Sun SPARC
machine code insertions 117
Suppress (All_Checks) 210
Suppress pragma 172, 181, 211, 282
Suppress_All pragma 184, 210
Suppress_Elaboration_Checks pragma 172, 184
Switch File
API Builder 58
switches
Ada compiler 175
root view 49
syntax
Ada preprocessor 61
code rule checker 91
lexical elements in preprocessor 63
preprocessor invocation 61
preprocessor language 62
System package 218
System_Name pragma 181

T

tail recursion elimination
optimization 23
task
stack size 205, 280
Task_Dispatching_Policy pragma 172
Task_Priority_Default 205, 280
Task_Stack_Size_Default 205, 280
Task_Storage_Size 205, 280
tasks 233
address clauses on 233
deadlock 42
entry identifier 213, 286
interrupt-entry 40
priority 205, 280
stack size 205, 280
time-slice 205, 280
types
sizes 224, 294
TEXT type
preprocessor 70
Text_Io package 236
time slicing 40, 205, 280
Time_Slice 205, 280
Time_Slice_Priority 205, 280
Time_Slicing_Enabled 205, 280
Tiny_Integer 215
Trace_Buffer_Size 206, 280
trap delays 33
TRE 23
type
alignment (Ada 83) 222
alignment (Ada 95) 292
type conversion, unchecked 234
type conversions
preprocessor 77
'Type_Key attribute 2, 212, 214, 285, 287
types
conversion 236
preprocessor 68
private, constraining 207

U

ualarm call 42
UCE 23
UCR 23
unchecked deallocation 233
Unchecked_Conversion generic function 234
Unchecked_Deallocation generic function 233
UNIX
input and output 237
signal handlers 40
installing 210
signals 39, 204, 279
stack size 205, 279
system and library calls 41 43
unreferenced code elimination
optimization 23
Unsuppress pragma 172
useless code removal
optimization 23
useless computations and variables optimization algorithms 28

V

variable
preprocessor 67
variable declarations
examples in preprocessor 67
visibility
preprocessor 84

W

Wait_Stack_Size 206, 280
Warning pragma 83

Z

Zero_Stacks_Enabled 206, 281

Rational Software Corporation 
http://www.rational.com
support@rational.com
techpubs@rational.com
Copyright © 1993-2004, Rational Software Corporation. All rights reserved.
TOC PREV NEXT INDEX DOC LIST MASTER INDEX TECHNOTES APEX TIPS