STR$FAILURE - String Failure Ac 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 1 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 0 1 MODULE SFAIL ( IDENT = 'V1.2-9' %TITLE 'STR$FAILURE - String Failure Action Routine' 0 2 %BLISS32( ,ADDRESSING_MODE( EXTERNAL=LONG_RELATIVE ) ) 0 3 %BLISS36( ,ENTRY( STR$FAILURE, STR$X_FAILURE, P 0 4 STR$C_FAILURE, STR$A_FAILURE, P 0 5 STR$S_FAILURE, STR$B_FAILURE ),OTS='' ) 0 6 ) = 0 7 BEGIN 1 8 1 9 ! 1 10 ! COPYRIGHT (c) 1983 BY 1 11 ! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. 1 12 ! 1 13 ! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED 1 14 ! ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE 1 15 ! INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER 1 16 ! COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY 1 17 ! OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY 1 18 ! TRANSFERRED. 1 19 ! 1 20 ! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE 1 21 ! AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT 1 22 ! CORPORATION. 1 23 ! 1 24 ! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS 1 25 ! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. 1 26 ! 1 27 1 28 !++ 1 29 ! 1 30 ! FACILITY: BLISS Library 1 31 ! 1 32 ! ABSTRACT: 1 33 ! 1 34 ! This module includes all standard String Handling failure 1 35 ! action routine processing. 1 36 ! 1 37 ! ENVIRONMENT: User mode - multiple host operating/file systems 1 38 ! 1 39 ! AUTHOR: Ward Clark, CREATION DATE: 28 February 1980 1 40 ! 1 41 !-- SFAIL STR$FAILURE - String Failure Ac 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 2 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 1 43 ! 1 44 ! TABLE OF CONTENTS: 1 45 ! 1 46 1 47 FORWARD ROUTINE 1 48 STR$FAILURE; ! Failure action routine dispatcher 1 49 %IF %BLISS(BLISS16) %THEN U 1 50 EXTERNAL ROUTINE U 1 51 %ELSE 1 52 FORWARD ROUTINE 1 53 %FI 1 54 STR$X_FAILURE, ! String comparison failure action routine 1 55 STR$C_FAILURE, ! $STR_COPY failure action routine 1 56 STR$A_FAILURE, ! $STR_APPEND failure action routine 1 57 STR$S_FAILURE, ! $STR_SCAN failure action routine 1 58 STR$B_FAILURE; ! $STR_BINARY failure action routine 1 59 1 60 ! 1 61 ! INCLUDE FILES: 1 62 ! 1 63 1 64 LIBRARY 'XPORT' ; ! Public XPORT control block and macro definitions 1 66 LIBRARY 'XPOSYS' ; ! Internal XPORT macro definitions 1 68 1 69 $XPO_SYS_TEST( $ALL ) ; %PRINT: This module was compiled for any VAX-11 system ; %PRINT: XPORT V1.3-51 XPOSYS V1.3-16 XPO$K_VERSION = 1 XPO$K_LEVEL = 3 1 70 1 71 ! 1 72 ! MACROS: 1 73 ! 1 74 1 75 ! 1 76 ! EQUATED SYMBOLS: 1 77 ! 1 78 1 79 ! 1 80 ! PSECT DECLARATIONS: 1 81 ! 1 82 1 83 $XPO_PSECTS ! Declare XPORT PSECT names and attributes 1 84 1 85 ! 1 86 ! OWN STORAGE: 1 87 ! 1 88 1 89 ! See each function-specific failure action routine. 1 90 1 91 ! 1 92 ! EXTERNAL REFERENCES: 1 93 ! 1 94 1 95 ! See each function-specific failure action routine. SFAIL STR$FAILURE - String Failure Ac 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 3 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 1 97 GLOBAL ROUTINE STR$FAILURE( function_code, primary_code, secondary_code, action_arg1, action_arg2, action_arg3 ) = 1 98 1 99 !++ 1 100 ! 1 101 ! FUNCTIONAL DESCRIPTION: 1 102 ! 1 103 ! This routine dispatches a failure action routine call to the 1 104 ! appropriate processing routine for the function which failed. 1 105 ! 1 106 ! FORMAL PARAMETERS: 1 107 ! 1 108 ! function_code - String Handling failure action routine function code 1 109 ! primary_code - primary failure completion code 1 110 ! secondary_code - secondary failure completion code 1 111 ! action_arg1,2,3 - function-specific action routine arguments 1 112 ! 1 113 ! IMPLICIT INPUTS: 1 114 ! 1 115 ! None 1 116 ! 1 117 ! IMPLICIT OUTPUTS: 1 118 ! 1 119 ! None 1 120 ! 1 121 ! ROUTINE VALUE: 1 122 ! 1 123 ! primary completion code (value passed as a formal parameter) 1 124 ! 1 125 ! SIDE EFFECTS: 1 126 ! 1 127 ! This routine returns to the caller if the completion code 1 128 ! severity is SUCCESS or WARNING. If the severity is ERROR or 1 129 ! FATAL, this routine terminates program execution. 1 130 ! 1 131 !-- 1 132 1 133 BEGIN 2 134 2 135 LOCAL 2 136 action_routine; ! Address of action routine to be called 2 137 2 138 ! 2 139 ! Select the appropriate failure processing routine. 2 140 ! 2 141 2 142 action_routine = ( CASE .function_code FROM 1 TO STR$K_BINARY OF 3 143 SET 3 144 [ STR$K_COMPARE ] : STR$X_FAILURE; 3 145 [ STR$K_COPY ] : STR$C_FAILURE; 3 146 [ STR$K_APPEND ] : STR$A_FAILURE; 3 147 [ STR$K_SCAN ] : STR$S_FAILURE; 3 148 [ STR$K_BINARY ] : STR$B_FAILURE; 3 149 TES ); 2 150 2 151 ! 2 152 ! Call the action routine. 2 153 ! SFAIL STR$FAILURE - String Failure Ac 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 4 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 2 154 2 155 (.action_routine)( .function_code, .primary_code, .secondary_code, .action_arg1, .action_arg2, .action_arg3 ); 2 156 2 157 ! 2 158 ! Terminate program execution or return to the caller. 2 159 ! 2 160 2 161 IF .primary_code OR ! If the completion code is a success code 2 162 .primary_code<0,3,0> EQL XPO$_WARNING ! or has a WARNING severity, 2 163 THEN ! 2 164 RETURN .primary_code ! return the input completion code to the caller. 2 165 ELSE 2 166 $XPO_TERMINATE( CODE = XPO$_PREV_ERROR ) ! Otherwise, terminate program execution. 3 167 3 168 END; 1 169 1 170 $XPO_MODULE( SFAIL1 ) SFAIL STR$X_FAILURE - String Comparis 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 5 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 1 172 %TITLE 'STR$X_FAILURE - String Comparison Failure Action Routine' 1 173 1 174 GLOBAL ROUTINE STR$X_FAILURE( function_code, primary_code, secondary_code, relation, string1, string2 ) = 1 175 1 176 !++ 1 177 ! 1 178 ! FUNCTIONAL DESCRIPTION: 1 179 ! 1 180 ! This routine sends the user a message sequence similar to the following: 1 181 ! 1 182 ! ? comparison error: 'string1' equal to 'string2' 1 183 ! - primary completion code message 1 184 ! - secondary completion code message 1 185 ! 1 186 ! FORMAL PARAMETERS: 1 187 ! 1 188 ! function code - action routine function code (STR$K_COMPARE) 1 189 ! primary_code - primary completion code 1 190 ! secondary_code - secondary completion code 1 191 ! relation - comparison relationship string (e.g., ' compared to ') 1 192 ! string1 - address of primary string descriptor 1 193 ! string2 - address of secondary string descriptor 1 194 ! 1 195 ! IMPLICIT INPUTS: 1 196 ! 1 197 ! None 1 198 ! 1 199 ! IMPLICIT OUTPUTS: 1 200 ! 1 201 ! None 1 202 ! 1 203 ! COMPLETION CODES: 1 204 ! 1 205 ! .primary_code - primary completion code passed by caller 1 206 ! 1 207 ! SIDE EFFECTS: 1 208 ! 1 209 ! None 1 210 ! 1 211 !-- 1 212 1 213 BEGIN 2 214 2 215 OWN 2 216 initial_text : $STR_DESCRIPTOR( STRING = 'comparison error: ' ); 2 217 2 218 EXTERNAL ROUTINE 2 219 XST$INIT_MSG : NOVALUE, ! Failure message initialization routine 2 220 XST$STRING : NOVALUE, ! Append string to failure message routine 2 221 XST$QUOTED : NOVALUE; ! Append quoted string to failure message routine 2 222 2 223 EXTERNAL 2 224 XST$MESSAGE; ! Failure message string descriptor 2 225 2 226 ! 2 227 ! Create the initial function-specific message. 2 228 ! SFAIL STR$X_FAILURE - String Comparis 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 6 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 2 229 2 230 XST$INIT_MSG( initial_text ); 2 231 XST$QUOTED( .string1 ); 2 232 XST$STRING( .relation ); 2 233 XST$QUOTED( .string2 ); 2 234 2 235 ! 2 236 ! Send a multi-line failure message to the user. 2 237 ! 2 238 2 239 $XPO_PUT_MSG( STRING = XST$MESSAGE, ! Function-specific message P 2 240 CODE = .primary_code, ! Primary failure completion code P 2 241 CODE = .secondary_code, ! Secondary failure completion code P 2 242 FAILURE = 0 ); 2 243 2 244 ! 2 245 ! Return to the caller. 2 246 ! 2 247 2 248 RETURN .primary_code 2 249 2 250 END; 1 251 1 252 $XPO_MODULE( SFAIL2 ) SFAIL STR$C_FAILURE - $STR_COPY Failu 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 7 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 1 254 %TITLE 'STR$C_FAILURE - $STR_COPY Failure Action Routine' 1 255 1 256 GLOBAL ROUTINE STR$C_FAILURE( function_code, primary_code, secondary_code, dummy, string, target ) = 1 257 1 258 !++ 1 259 ! 1 260 ! FUNCTIONAL DESCRIPTION: 1 261 ! 1 262 ! This routine sends the user a message sequence similar to the following: 1 263 ! 1 264 ! ? error copying 'string' 1 265 ! - primary completion code message 1 266 ! - secondary completion code message 1 267 ! 1 268 ! FORMAL PARAMETERS: 1 269 ! 1 270 ! function code - action routine function code (STR$K_COMPARE) 1 271 ! primary_code - primary completion code 1 272 ! secondary_code - secondary completion code 1 273 ! dummy - dummy argument (not used) 1 274 ! string - address of source string descriptor 1 275 ! target - address of target string descriptor 1 276 ! 1 277 ! IMPLICIT INPUTS: 1 278 ! 1 279 ! None 1 280 ! 1 281 ! IMPLICIT OUTPUTS: 1 282 ! 1 283 ! None 1 284 ! 1 285 ! COMPLETION CODES: 1 286 ! 1 287 ! .primary_code - primary completion code passed by caller 1 288 ! 1 289 ! SIDE EFFECTS: 1 290 ! 1 291 ! None 1 292 ! 1 293 !-- 1 294 1 295 BEGIN 2 296 2 297 OWN 2 298 initial_text : $STR_DESCRIPTOR( STRING = 'error copying ' ); 2 299 2 300 EXTERNAL ROUTINE 2 301 XST$INIT_MSG : NOVALUE, ! Failure message initialization routine 2 302 XST$QUOTED : NOVALUE; ! Append quoted string to failure message routine 2 303 2 304 EXTERNAL 2 305 XST$MESSAGE; ! Failure message string descriptor 2 306 2 307 ! 2 308 ! Create the initial function-specific message. 2 309 ! 2 310 SFAIL STR$C_FAILURE - $STR_COPY Failu 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 8 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 2 311 XST$INIT_MSG( initial_text ); 2 312 XST$QUOTED( .string ); 2 313 2 314 ! 2 315 ! Send a multi-line failure message to the user. 2 316 ! 2 317 2 318 $XPO_PUT_MSG( STRING = XST$MESSAGE, ! Function-specific message P 2 319 CODE = .primary_code, ! Primary failure completion code P 2 320 CODE = .secondary_code, ! Secondary failure completion code P 2 321 FAILURE = 0 ); 2 322 2 323 ! 2 324 ! Return to the caller. 2 325 ! 2 326 2 327 RETURN .primary_code 2 328 2 329 END; 1 330 1 331 $XPO_MODULE( SFAIL3 ) SFAIL STR$A_FAILURE - $STR_APPEND Fai 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 9 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 1 333 %TITLE 'STR$A_FAILURE - $STR_APPEND Failure Action Routine' 1 334 1 335 GLOBAL ROUTINE STR$A_FAILURE( function_code, primary_code, secondary_code, dummy, string, target ) = 1 336 1 337 !++ 1 338 ! 1 339 ! FUNCTIONAL DESCRIPTION: 1 340 ! 1 341 ! This routine sends the user a message sequence similar to the following: 1 342 ! 1 343 ! ? error appending 'string' to 'target' 1 344 ! - primary completion code message 1 345 ! - secondary completion code message 1 346 ! 1 347 ! FORMAL PARAMETERS: 1 348 ! 1 349 ! function code - action routine function code (STR$K_COMPARE) 1 350 ! primary_code - primary completion code 1 351 ! secondary_code - secondary completion code 1 352 ! dummy - dummy argument (not used) 1 353 ! string - address of source string descriptor 1 354 ! target - address of target string descriptor 1 355 ! 1 356 ! IMPLICIT INPUTS: 1 357 ! 1 358 ! None 1 359 ! 1 360 ! IMPLICIT OUTPUTS: 1 361 ! 1 362 ! None 1 363 ! 1 364 ! COMPLETION CODES: 1 365 ! 1 366 ! .primary_code - primary completion code passed by caller 1 367 ! 1 368 ! SIDE EFFECTS: 1 369 ! 1 370 ! None 1 371 ! 1 372 !-- 1 373 1 374 BEGIN 2 375 2 376 OWN 2 377 initial_text : $STR_DESCRIPTOR( STRING = 'error appending ' ), 2 378 to_text : $STR_DESCRIPTOR( STRING = ' to ' ); 2 379 2 380 EXTERNAL ROUTINE 2 381 XST$INIT_MSG : NOVALUE, ! Failure message initialization routine 2 382 XST$STRING : NOVALUE, ! Append string to failure message routine 2 383 XST$QUOTED : NOVALUE; ! Append quoted string to failure message routine 2 384 2 385 EXTERNAL 2 386 XST$MESSAGE; ! Failure message string descriptor 2 387 2 388 ! 2 389 ! Create the initial function-specific message. SFAIL STR$A_FAILURE - $STR_APPEND Fai 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 10 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 2 390 ! 2 391 2 392 XST$INIT_MSG( initial_text ); 2 393 XST$QUOTED( .string ); 2 394 XST$STRING( to_text ); 2 395 XST$QUOTED( .target ); 2 396 2 397 ! 2 398 ! Send a multi-line failure message to the user. 2 399 ! 2 400 2 401 $XPO_PUT_MSG( STRING = XST$MESSAGE, ! Function-specific message P 2 402 CODE = .primary_code, ! Primary failure completion code P 2 403 CODE = .secondary_code, ! Secondary failure completion code P 2 404 FAILURE = 0 ); 2 405 2 406 ! 2 407 ! Return to the caller. 2 408 ! 2 409 2 410 RETURN .primary_code 2 411 2 412 END; 1 413 1 414 $XPO_MODULE( SFAIL4 ) SFAIL STR$S_FAILURE - $STR_SCAN Failu 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 11 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 1 416 %TITLE 'STR$S_FAILURE - $STR_SCAN Failure Action Routine' 1 417 1 418 GLOBAL ROUTINE STR$S_FAILURE( function_code, primary_code, secondary_code, scan_function, string, pattern ) = 1 419 1 420 !++ 1 421 ! 1 422 ! FUNCTIONAL DESCRIPTION: 1 423 ! 1 424 ! This routine sends the user a message sequence similar to the following: 1 425 ! 1 426 ! ? error scanning 'string' to find 'pattern' 1 427 ! - primary completion code message 1 428 ! - secondary completion code message 1 429 ! 1 430 ! FORMAL PARAMETERS: 1 431 ! 1 432 ! function code - action routine function code (STR$K_COMPARE) 1 433 ! primary_code - primary completion code 1 434 ! secondary_code - secondary completion code 1 435 ! scan_function - $STR_SCAN function code 1 436 ! string - address of source string descriptor 1 437 ! pattern - address of pattern string descriptor 1 438 ! 1 439 ! IMPLICIT INPUTS: 1 440 ! 1 441 ! None 1 442 ! 1 443 ! IMPLICIT OUTPUTS: 1 444 ! 1 445 ! None 1 446 ! 1 447 ! COMPLETION CODES: 1 448 ! 1 449 ! .primary_code - primary completion code passed by caller 1 450 ! 1 451 ! SIDE EFFECTS: 1 452 ! 1 453 ! None 1 454 ! 1 455 !-- 1 456 1 457 BEGIN 2 458 2 459 OWN 2 460 initial_text : $STR_DESCRIPTOR( STRING = 'error scanning ' ), 2 461 find_text : $STR_DESCRIPTOR( STRING = ' to find ' ), 2 462 span_text : $STR_DESCRIPTOR( STRING = ', spanning ' ), 2 463 stop_text : $STR_DESCRIPTOR( STRING = ', stopping at ' ); 2 464 2 465 EXTERNAL ROUTINE 2 466 XST$INIT_MSG : NOVALUE, ! Failure message initialization routine 2 467 XST$STRING : NOVALUE, ! Append string to failure message routine 2 468 XST$QUOTED : NOVALUE; ! Append quoted string to failure message routine 2 469 2 470 EXTERNAL 2 471 XST$MESSAGE; ! Failure message string descriptor 2 472 SFAIL STR$S_FAILURE - $STR_SCAN Failu 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 12 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 2 473 ! 2 474 ! Create the initial function-specific message. 2 475 ! 2 476 2 477 XST$INIT_MSG( initial_text ); 2 478 XST$QUOTED( .string ); 2 479 2 480 CASE .scan_function FROM STR$K_FIND TO STR$K_STOP OF 2 481 SET 2 482 [ STR$K_FIND ] : XST$STRING( find_text ); 2 483 [ STR$K_SPAN ] : XST$STRING( span_text ); 2 484 [ STR$K_STOP ] : XST$STRING( stop_text ); 2 485 TES; 2 486 2 487 XST$QUOTED( .pattern ); 2 488 2 489 ! 2 490 ! Send a multi-line failure message to the user. 2 491 ! 2 492 2 493 $XPO_PUT_MSG( STRING = XST$MESSAGE, ! Function-specific message P 2 494 CODE = .primary_code, ! Primary failure completion code P 2 495 CODE = .secondary_code, ! Secondary failure completion code P 2 496 FAILURE = 0 ); 2 497 2 498 ! 2 499 ! Return to the caller. 2 500 ! 2 501 2 502 RETURN .primary_code 2 503 2 504 END; 1 505 1 506 $XPO_MODULE( SFAIL5 ) SFAIL STR$B_FAILURE - $STR_BINARY Fai 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 13 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 1 508 %TITLE 'STR$B_FAILURE - $STR_BINARY Failure Action Routine' 1 509 1 510 GLOBAL ROUTINE STR$B_FAILURE( function_code, primary_code, secondary_code, convert_function, string, result ) = 1 511 1 512 !++ 1 513 ! 1 514 ! FUNCTIONAL DESCRIPTION: 1 515 ! 1 516 ! This routine sends the user a message sequence similar to the following: 1 517 ! 1 518 ! ? error converting 'string' to binary 1 519 ! - primary completion code message 1 520 ! - secondary completion code message 1 521 ! 1 522 ! FORMAL PARAMETERS: 1 523 ! 1 524 ! function code - action routine function code (STR$K_COMPARE) 1 525 ! primary_code - primary completion code 1 526 ! secondary_code - secondary completion code 1 527 ! convert_function - $STR_BINARY function code 1 528 ! string - address of source string descriptor 1 529 ! result - address of result area 1 530 ! 1 531 ! IMPLICIT INPUTS: 1 532 ! 1 533 ! None 1 534 ! 1 535 ! IMPLICIT OUTPUTS: 1 536 ! 1 537 ! None 1 538 ! 1 539 ! COMPLETION CODES: 1 540 ! 1 541 ! .primary_code - primary completion code passed by caller 1 542 ! 1 543 ! SIDE EFFECTS: 1 544 ! 1 545 ! None 1 546 ! 1 547 !-- 1 548 1 549 BEGIN 2 550 2 551 OWN 2 552 initial_text : $STR_DESCRIPTOR( STRING = 'error converting ' ), 2 553 binary_text : $STR_DESCRIPTOR( STRING = ' to binary' ); 2 554 2 555 EXTERNAL ROUTINE 2 556 XST$INIT_MSG : NOVALUE, ! Failure message initialization routine 2 557 XST$STRING : NOVALUE, ! Append string to failure message routine 2 558 XST$QUOTED : NOVALUE; ! Append quoted string to failure message routine 2 559 2 560 EXTERNAL 2 561 XST$MESSAGE; ! Failure message string descriptor 2 562 2 563 ! 2 564 ! Create the initial function-specific message. SFAIL STR$B_FAILURE - $STR_BINARY Fai 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 14 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 2 565 ! 2 566 2 567 XST$INIT_MSG( initial_text ); 2 568 XST$QUOTED( .string ); 2 569 XST$STRING( binary_text ); 2 570 2 571 ! 2 572 ! Send a multi-line failure message to the user. 2 573 ! 2 574 2 575 $XPO_PUT_MSG( STRING = XST$MESSAGE, ! Function-specific message P 2 576 CODE = .primary_code, ! Primary failure completion code P 2 577 CODE = .secondary_code, ! Secondary failure completion code P 2 578 FAILURE = 0 ); 2 579 2 580 ! 2 581 ! Return to the caller. 2 582 ! 2 583 2 584 RETURN .primary_code 2 585 2 586 END; 1 587 END 1 588 ELUDOM SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 15 V1.2-9 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 .psect _XPO$CODE, CON, LCL, SHR, EXE, NOWRT, NOVEC .proc STR$FAILURE .align 32 .global STR$FAILURE STR$FAILURE: // 000097 { .mii 002C00C24A80 0000 alloc r42 = rspfs, 6, 6, 6, 0 000188000A40 0001 mov r41 = br0 0119F8CE0300 0002 adds r12 = -16, r12 } { .mib 01CC020041C0 0010 cmp4.eq pr7, pr0 = 2, FUNCTION_CODE // pr7, pr0 = 2, r32 // 000142 010800100AC0 0011 mov r43 = r1 // 000097 008600020007 0012 (pr7) br.cond.dpnt.few L$19 // 000142 } { .mfb 01CC02006240 0020 cmp4.eq pr9, pr0 = 3, FUNCTION_CODE // pr9, pr0 = 3, r32 000008000000 0021 nop.f 0 008600018009 0022 (pr9) br.cond.dpnt.few L$23 } { .mfb 01CC020082C0 0030 cmp4.eq pr11, pr0 = 4, FUNCTION_CODE // pr11, pr0 = 4, r32 000008000000 0031 nop.f 0 00860001000B 0032 (pr11) br.cond.dpnt.few L$27 } { .mfb 01CC0200A340 0040 cmp4.eq pr13, pr0 = 5, FUNCTION_CODE // pr13, pr0 = 5, r32 000008000000 0041 nop.f 0 00860000800D 0042 (pr13) br.cond.dpnt.few L$31 ;; } { .mii 0120001000C0 0050 add r3 = @ltoff(@fptr(STR$X_FAILURE)), r1 010800C20200 0051 adds r8 = 16, r12 000008000000 0052 nop.i 0 ;; } { .mmi 0080C03000C0 0060 ld8 r3 = STR$X_FAILURE ;; // r3 = [r3] 008CC0806000 0061 st8 [r8] = r3 000008000000 0062 nop.i 0 } { .mfb 000008000000 0070 nop.m 0 000008000000 0071 nop.f 0 008000018000 0072 br.sptk.few L$32 ;; } 0080 L$31: { .mii 012000100240 0080 add r9 = @ltoff(@fptr(STR$B_FAILURE)), r1 010800C20280 0081 adds r10 = 16, r12 000008000000 0082 nop.i 0 ;; } { .mmi 0080C0900240 0090 ld8 r9 = STR$B_FAILURE ;; // r9 = [r9] 008CC0A12000 0091 st8 [r10] = r9 000008000000 0092 nop.i 0 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 16 V1.2-9 STR$FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 } { .mfb 000008000000 00A0 nop.m 0 000008000000 00A1 nop.f 0 008000012000 00A2 br.sptk.few L$32 ;; } 00B0 L$27: { .mii 0120001002C0 00B0 add r11 = @ltoff(@fptr(STR$S_FAILURE)), r1 010800C20440 00B1 adds r17 = 16, r12 000008000000 00B2 nop.i 0 ;; } { .mmi 0080C0B002C0 00C0 ld8 r11 = STR$S_FAILURE ;; // r11 = [r11] 008CC1116000 00C1 st8 [r17] = r11 000008000000 00C2 nop.i 0 } { .mfb 000008000000 00D0 nop.m 0 000008000000 00D1 nop.f 0 00800000C000 00D2 br.sptk.few L$32 ;; } 00E0 L$23: { .mii 012000100480 00E0 add r18 = @ltoff(@fptr(STR$A_FAILURE)), r1 010800C204C0 00E1 adds r19 = 16, r12 000008000000 00E2 nop.i 0 ;; } { .mmi 0080C1200480 00F0 ld8 r18 = STR$A_FAILURE ;; // r18 = [r18] 008CC1324000 00F1 st8 [r19] = r18 000008000000 00F2 nop.i 0 } { .mfb 000008000000 0100 nop.m 0 000008000000 0101 nop.f 0 008000006000 0102 br.sptk.few L$32 ;; } 0110 L$19: { .mii 012000100500 0110 add r20 = @ltoff(@fptr(STR$C_FAILURE)), r1 010800C20540 0111 adds r21 = 16, r12 000008000000 0112 nop.i 0 ;; } { .mmi 0080C1400500 0120 ld8 r20 = STR$C_FAILURE ;; // r20 = [r20] 008CC1528000 0121 st8 [r21] = r20 000008000000 0122 nop.i 0 } 0130 L$32: { .mii 010800C20580 0130 adds r22 = 16, r12 01200000C640 0131 mov r25 = 6 // 000155 00A412100A00 0132 extr.u r40 = PRIMARY_CODE, 0, 3 ;; // r40 = r33, 0, 3 // 000162 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 17 V1.2-9 STR$FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 } { .mii 008081600580 0140 ld4 r22 = [r22] // 000142 0000B2500C40 0141 sxt4 r49 = ACTION_ARG3 // r49 = r37 // 000155 0000B2400C00 0142 sxt4 r48 = ACTION_ARG2 ;; // r48 = r36 } { .mii 000008000000 0150 nop.m 0 0000B2300BC0 0151 sxt4 r47 = ACTION_ARG1 // r47 = r35 0000B1600580 0152 sxt4 r22 = r22 } { .mii 000008000000 0160 nop.m 0 0000B2200B80 0161 sxt4 r46 = SECONDARY_CODE // r46 = r34 0000B2100B40 0162 sxt4 r45 = PRIMARY_CODE ;; // r45 = r33 } { .mii 000008000000 0170 nop.m 0 0000B2000B00 0171 sxt4 r44 = FUNCTION_CODE // r44 = r32 010801610580 0172 adds r22 = 8, r22 ;; } { .mmi 00B0C96F0040 0180 ld8 r1 = [r22], -8 ;; 0080C1600580 0181 ld8 r22 = [r22] 000008000000 0182 nop.i 0 ;; } { .mib 000008000000 0190 nop.m 0 000E0012C180 0191 mov br6 = r22 00210000C000 0192 br.call.sptk.few br0 = br6 } { .mii 01C400050200 01A0 cmp4.eq pr8, pr0 = r40, r0 // 000162 00A0321001C0 01A1 tbit.z pr7, pr6 = PRIMARY_CODE, 0 // pr7, pr6 = r33, 0 // 000161 010802B00040 01A2 mov r1 = r43 ;; // 000155 } { .mbb 01C238000188 01B0 (pr8) cmp.eq.or.andcm pr6, pr7 = r0, r0 // 000161 008600002006 01B1 (pr6) br.cond.dpnt.few L$33 008600004007 01B2 (pr7) br.cond.dpnt.few L$34 } 01C0 L$33: { .mfb 010802100200 01C0 mov r8 = PRIMARY_CODE // r8 = r33 // 000164 000008000000 01C1 nop.f 0 008000008000 01C2 br.sptk.few L$36 ;; } 01D0 L$34: // 000166 { .mlx 012000002640 01D0 mov r25 = 1 000000000000 01D1 movl r44 = 2138610 0194305C96 } { .mfb 000008000000 01E0 nop.m 0 000008000000 01E1 nop.f 0 00A000001000 01E2 br.call.sptk.many br0 = XPO$TERMINATE SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 18 V1.2-9 STR$FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 } { .mii 010800000200 01F0 mov r8 = r0 010802B00040 01F1 mov r1 = r43 000008000000 01F2 nop.i 0 ;; } 0200 L$36: { .mib 000008000000 0200 nop.m 0 0000B0800200 0201 sxt4 r8 = r8 004000000000 0202 nop.b 0 } { .mii 000008000000 0210 nop.m 0 000154054000 0211 mov.i rspfs = r42 010800C20300 0212 adds r12 = 16, r12 ;; } { .mib 000008000000 0220 nop.m 0 000E00152000 0221 mov br0 = r41 000108001100 0222 br.ret.sptk.many br0 ;; } .endp STR$FAILURE Routine Size: 560 bytes, Routine Base: _XPO$CODE + 0000 .proc STR$X_FAILURE .align 32 .global STR$X_FAILURE STR$X_FAILURE: // 000174 { .mii 0120001000C0 0230 add r3 = @ltoff(INITIAL_TEXT), r1 // 000230 0119F8CE0300 0231 adds r12 = -16, r12 // 000174 012000002640 0232 mov r25 = 1 ;; // 000230 } { .mmi 0080C03000C0 0240 ld8 r3 = INITIAL_TEXT ;; // r3 = [r3] 002C00C28A80 0241 alloc r42 = rspfs, 6, 6, 8, 0 // 000174 000188000A40 0242 mov r41 = br0 } { .mii 010800100AC0 0250 mov r43 = r1 0000B2200880 0251 sxt4 SECONDARY_CODE = SECONDARY_CODE // r34 = r34 // 000242 0000B0300B00 0252 sxt4 r44 = r3 ;; // 000230 } { .mfb 000008000000 0260 nop.m 0 000008000000 0261 nop.f 0 00A000001000 0262 br.call.sptk.many br0 = XST$INIT_MSG } { .mii 012000002640 0270 mov r25 = 1 // 000231 0000B2400B00 0271 sxt4 r44 = STRING1 // r44 = r36 010802B00040 0272 mov r1 = r43 // 000230 } { .mfb 000008000000 0280 nop.m 0 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 19 V1.2-9 STR$X_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 000008000000 0281 nop.f 0 004000000000 0282 nop.b 0 ;; } { .mfb 000008000000 0290 nop.m 0 000008000000 0291 nop.f 0 00A000001000 0292 br.call.sptk.many br0 = XST$QUOTED // 000231 } { .mii 012000002640 02A0 mov r25 = 1 // 000232 0000B2300B00 02A1 sxt4 r44 = RELATION // r44 = r35 010802B00040 02A2 mov r1 = r43 // 000231 } { .mfb 000008000000 02B0 nop.m 0 000008000000 02B1 nop.f 0 004000000000 02B2 nop.b 0 ;; } { .mfb 000008000000 02C0 nop.m 0 000008000000 02C1 nop.f 0 00A000001000 02C2 br.call.sptk.many br0 = XST$STRING // 000232 } { .mii 012000002640 02D0 mov r25 = 1 // 000233 0000B2500B00 02D1 sxt4 r44 = STRING2 // r44 = r37 010802B00040 02D2 mov r1 = r43 // 000232 } { .mfb 000008000000 02E0 nop.m 0 000008000000 02E1 nop.f 0 004000000000 02E2 nop.b 0 ;; } { .mfb 000008000000 02F0 nop.m 0 000008000000 02F1 nop.f 0 00A000001000 02F2 br.call.sptk.many br0 = XST$QUOTED // 000233 } { .mii 010802B00040 0300 mov r1 = r43 010800C20B00 0301 adds r44 = 16, r12 // 000242 012000012640 0302 mov r25 = 9 } { .mmi 012000002CC0 0310 mov r51 = 1 012000002C40 0311 mov r49 = 1 012000004BC0 0312 mov r47 = 2 ;; } { .mii 012000100A00 0320 add r40 = @ltoff(XST$MESSAGE), r1 0000B2100C80 0321 sxt4 r50 = PRIMARY_CODE // r50 = r33 0000B0000B80 0322 sxt4 r46 = r0 ;; } { .mmi 008CC2C44000 0330 st8 [r44] = SECONDARY_CODE // [r44] = r34 0080C2800A00 0331 ld8 r40 = XST$MESSAGE // r40 = [r40] 0000B0000B40 0332 sxt4 r45 = r0 ;; SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 20 V1.2-9 STR$X_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 } { .mib 0119F80FEB00 0340 adds r44 = -1, r0 0000B2800C00 0341 sxt4 r48 = r40 00A000001000 0342 br.call.sptk.many br0 = XPO$MESSAGE ;; } { .mii 010802B00040 0350 mov r1 = r43 0000B2100200 0351 sxt4 r8 = PRIMARY_CODE // r8 = r33 // 000248 000154054000 0352 mov.i rspfs = r42 ;; } { .mib 010800C20300 0360 adds r12 = 16, r12 000E00152000 0361 mov br0 = r41 000108001100 0362 br.ret.sptk.many br0 ;; } .endp STR$X_FAILURE Routine Size: 320 bytes, Routine Base: _XPO$CODE + 0230 .proc STR$C_FAILURE .align 32 .global STR$C_FAILURE STR$C_FAILURE: // 000256 { .mii 0120001000C0 0370 add r3 = @ltoff(INITIAL_TEXT), r1 // 000311 0119F8CE0300 0371 adds r12 = -16, r12 // 000256 012000002640 0372 mov r25 = 1 ;; // 000311 } { .mmi 0080C03000C0 0380 ld8 r3 = INITIAL_TEXT ;; // r3 = [r3] 002C00C28A80 0381 alloc r42 = rspfs, 6, 6, 8, 0 // 000256 000188000A40 0382 mov r41 = br0 } { .mii 010800100AC0 0390 mov r43 = r1 0000B2200880 0391 sxt4 SECONDARY_CODE = SECONDARY_CODE // r34 = r34 // 000321 0000B0300B00 0392 sxt4 r44 = r3 ;; // 000311 } { .mfb 000008000000 03A0 nop.m 0 000008000000 03A1 nop.f 0 00A000001000 03A2 br.call.sptk.many br0 = XST$INIT_MSG } { .mii 012000002640 03B0 mov r25 = 1 // 000312 0000B2400B00 03B1 sxt4 r44 = STRING // r44 = r36 010802B00040 03B2 mov r1 = r43 // 000311 } { .mfb 000008000000 03C0 nop.m 0 000008000000 03C1 nop.f 0 004000000000 03C2 nop.b 0 ;; } { .mfb 000008000000 03D0 nop.m 0 000008000000 03D1 nop.f 0 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 21 V1.2-9 STR$C_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 00A000001000 03D2 br.call.sptk.many br0 = XST$QUOTED // 000312 } { .mii 010802B00040 03E0 mov r1 = r43 010800C20B00 03E1 adds r44 = 16, r12 // 000321 012000012640 03E2 mov r25 = 9 } { .mmi 012000002CC0 03F0 mov r51 = 1 012000002C40 03F1 mov r49 = 1 012000004BC0 03F2 mov r47 = 2 ;; } { .mii 012000100A00 0400 add r40 = @ltoff(XST$MESSAGE), r1 0000B2100C80 0401 sxt4 r50 = PRIMARY_CODE // r50 = r33 0000B0000B80 0402 sxt4 r46 = r0 ;; } { .mmi 008CC2C44000 0410 st8 [r44] = SECONDARY_CODE // [r44] = r34 0080C2800A00 0411 ld8 r40 = XST$MESSAGE // r40 = [r40] 0000B0000B40 0412 sxt4 r45 = r0 ;; } { .mib 0119F80FEB00 0420 adds r44 = -1, r0 0000B2800C00 0421 sxt4 r48 = r40 00A000001000 0422 br.call.sptk.many br0 = XPO$MESSAGE ;; } { .mii 010802B00040 0430 mov r1 = r43 0000B2100200 0431 sxt4 r8 = PRIMARY_CODE // r8 = r33 // 000327 000154054000 0432 mov.i rspfs = r42 ;; } { .mib 010800C20300 0440 adds r12 = 16, r12 000E00152000 0441 mov br0 = r41 000108001100 0442 br.ret.sptk.many br0 ;; } .endp STR$C_FAILURE Routine Size: 224 bytes, Routine Base: _XPO$CODE + 0370 .proc STR$A_FAILURE .align 32 .global STR$A_FAILURE STR$A_FAILURE: // 000335 { .mii 002C00D2AAC0 0450 alloc r43 = rspfs, 6, 7, 8, 0 012000100A00 0451 add r40 = @ltoff(INITIAL_TEXT), r1 // 000392 000188000A80 0452 mov r42 = br0 // 000335 } { .mmi 0119F8CE0300 0460 adds r12 = -16, r12 012000002640 0461 mov r25 = 1 // 000392 010800100B00 0462 mov r44 = r1 ;; // 000335 } { .mii 0080C2800A00 0470 ld8 r40 = INITIAL_TEXT // r40 = [r40] // 000392 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 22 V1.2-9 STR$A_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 0000B2200880 0471 sxt4 SECONDARY_CODE = SECONDARY_CODE ;; // r34 = r34 // 000404 0000B2800B40 0472 sxt4 r45 = r40 // 000392 } { .mfb 010802810A00 0480 adds r40 = 8, r40 000008000000 0481 nop.f 0 00A000001000 0482 br.call.sptk.many br0 = XST$INIT_MSG ;; } { .mii 012000002640 0490 mov r25 = 1 // 000393 0000B2400B40 0491 sxt4 r45 = STRING // r45 = r36 010802C00040 0492 mov r1 = r44 // 000392 } { .mfb 000008000000 04A0 nop.m 0 000008000000 04A1 nop.f 0 004000000000 04A2 nop.b 0 ;; } { .mfb 000008000000 04B0 nop.m 0 000008000000 04B1 nop.f 0 00A000001000 04B2 br.call.sptk.many br0 = XST$QUOTED // 000393 } { .mii 012000002640 04C0 mov r25 = 1 // 000394 0000B2800B40 04C1 sxt4 r45 = r40 010802C00040 04C2 mov r1 = r44 // 000393 } { .mfb 000008000000 04D0 nop.m 0 000008000000 04D1 nop.f 0 004000000000 04D2 nop.b 0 ;; } { .mfb 000008000000 04E0 nop.m 0 000008000000 04E1 nop.f 0 00A000001000 04E2 br.call.sptk.many br0 = XST$STRING // 000394 } { .mii 012000002640 04F0 mov r25 = 1 // 000395 0000B2500B40 04F1 sxt4 r45 = TARGET // r45 = r37 010802C00040 04F2 mov r1 = r44 // 000394 } { .mfb 000008000000 0500 nop.m 0 000008000000 0501 nop.f 0 004000000000 0502 nop.b 0 ;; } { .mfb 000008000000 0510 nop.m 0 000008000000 0511 nop.f 0 00A000001000 0512 br.call.sptk.many br0 = XST$QUOTED // 000395 } { .mii 010802C00040 0520 mov r1 = r44 010800C20B40 0521 adds r45 = 16, r12 // 000404 012000012640 0522 mov r25 = 9 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 23 V1.2-9 STR$A_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 } { .mmi 012000002D00 0530 mov r52 = 1 012000002C80 0531 mov r50 = 1 012000004C00 0532 mov r48 = 2 ;; } { .mii 012000100A40 0540 add r41 = @ltoff(XST$MESSAGE), r1 0000B2100CC0 0541 sxt4 r51 = PRIMARY_CODE // r51 = r33 0000B0000BC0 0542 sxt4 r47 = r0 ;; } { .mmi 008CC2D44000 0550 st8 [r45] = SECONDARY_CODE // [r45] = r34 0080C2900A40 0551 ld8 r41 = XST$MESSAGE // r41 = [r41] 0000B0000B80 0552 sxt4 r46 = r0 ;; } { .mib 0119F80FEB40 0560 adds r45 = -1, r0 0000B2900C40 0561 sxt4 r49 = r41 00A000001000 0562 br.call.sptk.many br0 = XPO$MESSAGE ;; } { .mii 010802C00040 0570 mov r1 = r44 0000B2100200 0571 sxt4 r8 = PRIMARY_CODE // r8 = r33 // 000410 000154056000 0572 mov.i rspfs = r43 ;; } { .mib 010800C20300 0580 adds r12 = 16, r12 000E00154000 0581 mov br0 = r42 000108001100 0582 br.ret.sptk.many br0 ;; } .endp STR$A_FAILURE Routine Size: 320 bytes, Routine Base: _XPO$CODE + 0450 .proc STR$S_FAILURE .align 32 .global STR$S_FAILURE STR$S_FAILURE: // 000418 { .mii 002C00F2EB40 0590 alloc r45 = rspfs, 6, 9, 8, 0 012000100A00 0591 add r40 = @ltoff(INITIAL_TEXT), r1 // 000477 000188000B00 0592 mov r44 = br0 // 000418 } { .mmi 0119F8CE0300 05A0 adds r12 = -16, r12 012000002640 05A1 mov r25 = 1 // 000477 010800100B80 05A2 mov r46 = r1 ;; // 000418 } { .mmi 0080C2800A00 05B0 ld8 r40 = INITIAL_TEXT ;; // r40 = [r40] // 000477 000008000000 05B1 nop.m 0 0000B2800BC0 05B2 sxt4 r47 = r40 } { .mfb 000008000000 05C0 nop.m 0 000008000000 05C1 nop.f 0 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 24 V1.2-9 STR$S_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 00A000001000 05C2 br.call.sptk.many br0 = XST$INIT_MSG ;; } { .mii 012000002640 05D0 mov r25 = 1 // 000478 0000B2400BC0 05D1 sxt4 r47 = STRING // r47 = r36 010802E00040 05D2 mov r1 = r46 // 000477 } { .mfb 000008000000 05E0 nop.m 0 000008000000 05E1 nop.f 0 004000000000 05E2 nop.b 0 ;; } { .mfb 000008000000 05F0 nop.m 0 000008000000 05F1 nop.f 0 00A000001000 05F2 br.call.sptk.many br0 = XST$QUOTED // 000478 } { .mib 01CC023041C0 0600 cmp4.eq pr7, pr0 = 2, SCAN_FUNCTION // pr7, pr0 = 2, r35 // 000480 010802E00040 0601 mov r1 = r46 // 000478 008600008007 0602 (pr7) br.cond.dpnt.few L$6 // 000480 } { .mfb 01CC02306240 0610 cmp4.eq pr9, pr0 = 3, SCAN_FUNCTION // pr9, pr0 = 3, r35 000008000000 0611 nop.f 0 008600004009 0612 (pr9) br.cond.dpnt.few L$10 } { .mfb 010802810BC0 0620 adds r47 = 8, r40 // 000482 000008000000 0621 nop.f 0 008000006000 0622 br.sptk.few L$37 ;; } 0630 L$10: // 000480 { .mfb 010802830BC0 0630 adds r47 = 24, r40 // 000484 000008000000 0631 nop.f 0 008000004000 0632 br.sptk.few L$37 ;; } 0640 L$6: // 000480 { .mfi 010802820BC0 0640 adds r47 = 16, r40 // 000483 000008000000 0641 nop.f 0 000008000000 0642 nop.i 0 } 0650 L$37: { .mii 012000002640 0650 mov r25 = 1 0000B2200880 0651 sxt4 SECONDARY_CODE = SECONDARY_CODE ;; // r34 = r34 // 000496 0000B2F00BC0 0652 sxt4 r47 = r47 // 000483 } { .mfb 000008000000 0660 nop.m 0 000008000000 0661 nop.f 0 00A000001000 0662 br.call.sptk.many br0 = XST$STRING ;; } { .mii 012000002640 0670 mov r25 = 1 // 000487 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 25 V1.2-9 STR$S_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 0000B2500BC0 0671 sxt4 r47 = PATTERN // r47 = r37 010802E00040 0672 mov r1 = r46 // 000483 } { .mfb 000008000000 0680 nop.m 0 000008000000 0681 nop.f 0 004000000000 0682 nop.b 0 ;; } { .mfb 000008000000 0690 nop.m 0 000008000000 0691 nop.f 0 00A000001000 0692 br.call.sptk.many br0 = XST$QUOTED // 000487 } { .mii 010802E00040 06A0 mov r1 = r46 010800C20BC0 06A1 adds r47 = 16, r12 // 000496 012000012640 06A2 mov r25 = 9 } { .mmi 012000002D80 06B0 mov r54 = 1 012000002D00 06B1 mov r52 = 1 012000004C80 06B2 mov r50 = 2 ;; } { .mii 012000100AC0 06C0 add r43 = @ltoff(XST$MESSAGE), r1 0000B2100D40 06C1 sxt4 r53 = PRIMARY_CODE // r53 = r33 0000B0000C40 06C2 sxt4 r49 = r0 ;; } { .mmi 008CC2F44000 06D0 st8 [r47] = SECONDARY_CODE // [r47] = r34 0080C2B00AC0 06D1 ld8 r43 = XST$MESSAGE // r43 = [r43] 0000B0000C00 06D2 sxt4 r48 = r0 ;; } { .mib 0119F80FEBC0 06E0 adds r47 = -1, r0 0000B2B00CC0 06E1 sxt4 r51 = r43 00A000001000 06E2 br.call.sptk.many br0 = XPO$MESSAGE ;; } { .mii 010802E00040 06F0 mov r1 = r46 0000B2100200 06F1 sxt4 r8 = PRIMARY_CODE // r8 = r33 // 000502 00015405A000 06F2 mov.i rspfs = r45 ;; } { .mib 010800C20300 0700 adds r12 = 16, r12 000E00158000 0701 mov br0 = r44 000108001100 0702 br.ret.sptk.many br0 ;; } .endp STR$S_FAILURE Routine Size: 384 bytes, Routine Base: _XPO$CODE + 0590 .proc STR$B_FAILURE .align 32 .global STR$B_FAILURE STR$B_FAILURE: // 000510 { .mii SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 26 V1.2-9 STR$B_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 002C00D2AAC0 0710 alloc r43 = rspfs, 6, 7, 8, 0 012000100A00 0711 add r40 = @ltoff(INITIAL_TEXT), r1 // 000567 000188000A80 0712 mov r42 = br0 // 000510 } { .mmi 0119F8CE0300 0720 adds r12 = -16, r12 012000002640 0721 mov r25 = 1 // 000567 010800100B00 0722 mov r44 = r1 ;; // 000510 } { .mii 0080C2800A00 0730 ld8 r40 = INITIAL_TEXT // r40 = [r40] // 000567 0000B2200880 0731 sxt4 SECONDARY_CODE = SECONDARY_CODE ;; // r34 = r34 // 000578 0000B2800B40 0732 sxt4 r45 = r40 // 000567 } { .mfb 010802810A00 0740 adds r40 = 8, r40 000008000000 0741 nop.f 0 00A000001000 0742 br.call.sptk.many br0 = XST$INIT_MSG ;; } { .mii 012000002640 0750 mov r25 = 1 // 000568 0000B2400B40 0751 sxt4 r45 = STRING // r45 = r36 010802C00040 0752 mov r1 = r44 // 000567 } { .mfb 000008000000 0760 nop.m 0 000008000000 0761 nop.f 0 004000000000 0762 nop.b 0 ;; } { .mfb 000008000000 0770 nop.m 0 000008000000 0771 nop.f 0 00A000001000 0772 br.call.sptk.many br0 = XST$QUOTED // 000568 } { .mii 012000002640 0780 mov r25 = 1 // 000569 0000B2800B40 0781 sxt4 r45 = r40 010802C00040 0782 mov r1 = r44 // 000568 } { .mfb 000008000000 0790 nop.m 0 000008000000 0791 nop.f 0 004000000000 0792 nop.b 0 ;; } { .mfb 000008000000 07A0 nop.m 0 000008000000 07A1 nop.f 0 00A000001000 07A2 br.call.sptk.many br0 = XST$STRING // 000569 } { .mii 010802C00040 07B0 mov r1 = r44 010800C20B40 07B1 adds r45 = 16, r12 // 000578 012000012640 07B2 mov r25 = 9 } { .mmi 012000002D00 07C0 mov r52 = 1 012000002C80 07C1 mov r50 = 1 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 27 V1.2-9 STR$B_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 012000004C00 07C2 mov r48 = 2 ;; } { .mii 012000100A40 07D0 add r41 = @ltoff(XST$MESSAGE), r1 0000B2100CC0 07D1 sxt4 r51 = PRIMARY_CODE // r51 = r33 0000B0000BC0 07D2 sxt4 r47 = r0 ;; } { .mmi 008CC2D44000 07E0 st8 [r45] = SECONDARY_CODE // [r45] = r34 0080C2900A40 07E1 ld8 r41 = XST$MESSAGE // r41 = [r41] 0000B0000B80 07E2 sxt4 r46 = r0 ;; } { .mib 0119F80FEB40 07F0 adds r45 = -1, r0 0000B2900C40 07F1 sxt4 r49 = r41 00A000001000 07F2 br.call.sptk.many br0 = XPO$MESSAGE ;; } { .mii 010802C00040 0800 mov r1 = r44 0000B2100200 0801 sxt4 r8 = PRIMARY_CODE // r8 = r33 // 000584 000154056000 0802 mov.i rspfs = r43 ;; } { .mib 010800C20300 0810 adds r12 = 16, r12 000E00154000 0811 mov br0 = r42 000108001100 0812 br.ret.sptk.many br0 ;; } .endp STR$B_FAILURE Routine Size: 272 bytes, Routine Base: _XPO$CODE + 0710 .psect _XPO$DATA, CON, LCL, NOSHR, NOEXE, WRT, NOVEC .lcomm INITIAL_TEXT, 8, 8 .lcomm INITIAL_TEXT, 8, 8 .lcomm INITIAL_TEXT, 8, 8 .lcomm TO_TEXT, 8, 8 .lcomm INITIAL_TEXT, 8, 8 .lcomm FIND_TEXT, 8, 8 .lcomm SPAN_TEXT, 8, 8 .lcomm STOP_TEXT, 8, 8 .lcomm INITIAL_TEXT, 8, 8 .lcomm BINARY_TEXT, 8, 8 .lcomm P.AAA, 19, 16 .lcomm fill$$1, 1, 1 .lcomm P.AAB, 14, 16 .lcomm fill$$2, 2, 2 .lcomm P.AAC, 16, 16 .lcomm P.AAD, 4, 4 .lcomm P.AAE, 15, 16 .lcomm fill$$3, 1, 1 .lcomm P.AAF, 9, 16 .lcomm fill$$4, 3, 4 .lcomm P.AAG, 11, 16 .lcomm fill$$5, 1, 1 .lcomm P.AAH, 14, 16 .lcomm fill$$6, 2, 2 .lcomm P.AAI, 17, 16 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 28 V1.2-9 STR$B_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 .lcomm fill$$7, 3, 4 .lcomm P.AAJ, 10, 16 .psect _XPO$DATA, CON, LCL, NOSHR, NOEXE, WRT, NOVEC INITIAL_TEXT: 0013 0000 data2 0x13 // data2 19 0E 0002 data1 0xE // data1 14 01 0003 data1 0x1 // data1 1 00000000 0004 data4 P.AAA INITIAL_TEXT: 000E 0008 data2 0xE // data2 14 0E 000A data1 0xE // data1 14 01 000B data1 0x1 // data1 1 00000000 000C data4 P.AAB INITIAL_TEXT: 0010 0010 data2 0x10 // data2 16 0E 0012 data1 0xE // data1 14 01 0013 data1 0x1 // data1 1 00000000 0014 data4 P.AAC TO_TEXT: 0004 0018 data2 0x4 // data2 4 0E 001A data1 0xE // data1 14 01 001B data1 0x1 // data1 1 00000000 001C data4 P.AAD INITIAL_TEXT: 000F 0020 data2 0xF // data2 15 0E 0022 data1 0xE // data1 14 01 0023 data1 0x1 // data1 1 00000000 0024 data4 P.AAE FIND_TEXT: 0009 0028 data2 0x9 // data2 9 0E 002A data1 0xE // data1 14 01 002B data1 0x1 // data1 1 00000000 002C data4 P.AAF SPAN_TEXT: 000B 0030 data2 0xB // data2 11 0E 0032 data1 0xE // data1 14 01 0033 data1 0x1 // data1 1 00000000 0034 data4 P.AAG STOP_TEXT: 000E 0038 data2 0xE // data2 14 0E 003A data1 0xE // data1 14 01 003B data1 0x1 // data1 1 00000000 003C data4 P.AAH INITIAL_TEXT: 0011 0040 data2 0x11 // data2 17 0E 0042 data1 0xE // data1 14 01 0043 data1 0x1 // data1 1 00000000 0044 data4 P.AAI BINARY_TEXT: 000A 0048 data2 0xA // data2 10 0E 004A data1 0xE // data1 14 01 004B data1 0x1 // data1 1 00000000 004C data4 P.AAJ .psect _XPO$PLIT, CON, LCL, NOSHR, NOEXE, NOWRT, NOVEC P.AAA: 706D6F63 0000 string "comparison error: " 73697261 0004 SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 29 V1.2-9 STR$B_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 65206E6F 0008 726F7272 000C 20203A 0010 P.AAB: 6F727265 0014 string "error copying " 6F632072 0018 6E697970 001C 2067 0020 P.AAC: 6F727265 0024 string "error appending " 70612072 0028 646E6570 002C 20676E69 0030 P.AAD: 206F7420 0034 data4 0x206F7420 // data4 544175136 P.AAE: 6F727265 0038 string "error scanning " 63732072 003C 696E6E61 0040 20676E 0044 P.AAF: 206F7420 0048 string " to find " 646E6966 004C 20 0050 P.AAG: 7073202C 0054 string ", spanning " 696E6E61 0058 20676E 005C P.AAH: 7473202C 0060 string ", stopping at " 6970706F 0064 6120676E 0068 2074 006C P.AAI: 6F727265 0070 string "error converting " 6F632072 0074 7265766E 0078 676E6974 007C 20 0080 P.AAJ: 206F7420 0084 string " to binary" 616E6962 0088 7972 008C .section .data .type XPO$TERMINATE, @function .global XPO$TERMINATE .section .data .type XST$INIT_MSG, @function SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 30 V1.2-9 STR$B_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 .global XST$INIT_MSG .section .data .type XST$QUOTED, @function .global XST$QUOTED .section .data .type XST$STRING, @function .global XST$STRING .global XST$MESSAGE .section .data .type XPO$MESSAGE, @function .global XPO$MESSAGE .section .data .type XST$INIT_MSG, @function .global XST$INIT_MSG .section .data .type XST$QUOTED, @function .global XST$QUOTED .global XST$MESSAGE .section .data .type XPO$MESSAGE, @function .global XPO$MESSAGE .section .data .type XST$INIT_MSG, @function .global XST$INIT_MSG .section .data .type XST$QUOTED, @function .global XST$QUOTED .section .data .type XST$STRING, @function .global XST$STRING .global XST$MESSAGE .section .data .type XPO$MESSAGE, @function .global XPO$MESSAGE .section .data .type XST$INIT_MSG, @function .global XST$INIT_MSG .section .data .type XST$QUOTED, @function .global XST$QUOTED .section .data .type XST$STRING, @function .global XST$STRING .global XST$MESSAGE .section .data .type XPO$MESSAGE, @function .global XPO$MESSAGE .section .data .type XST$INIT_MSG, @function .global XST$INIT_MSG .section .data .type XST$QUOTED, @function .global XST$QUOTED .section .data .type XST$STRING, @function .global XST$STRING .global XST$MESSAGE SFAIL Machine Code Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 31 V1.2-9 STR$B_FAILURE 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 .section .data .type XPO$MESSAGE, @function .global XPO$MESSAGE ; Library Statistics ; ; -------- Symbols -------- Pages ; File Total Loaded Percent Mapped ; ; DISK$NORMS_OWN:[LASTOVICA.XPORT.VMSGEN]XPORT.L32;14 ; 590 40 6 270 ; DISK$NORMS_OWN:[LASTOVICA.XPORT.VMSGEN]XPOSYS.L32;14 ; 91 12 13 27 Source Listing 4-FEB-2004 11:02:00 BLISS-32I T1.1-053 Page 32 Source Listing 19-MAR-2002 10:11:39 [LASTOVICA.XPORT.VMSGEN]SFAIL.BLI;1 COMMAND LINE: BLISSSFAIL/LIST/DEBUG