Previous Next Contents Generated Index Doc Set Home



Error Handling

If the programmer calls a BLAS3 subroutine with an illegal argument value then the subroutine will call the error handling subroutine XERBLA. XERBLA will print the name of the subroutine in which the error was detected, the number of the first argument found to be in error, and the values of the scalar arguments. The values of the arguments with the same types are printed together. As an example, consider the following call to SGEMM:



CALL SGEMM ('N', 'ILLEGAL', -10, 20, 30, 5.0, A, 11, B, 31, 9.0, C, 12)

In the call above, the value of TRANSB is illegal. SGEMM will call XERBLA, which will print the report shown below and then terminate with a STOP statement.




      ** On entry to SGEMM  parameter number  2 had an illegal value



     CHARACTER PARAMETERS:
         N          I       



     INTEGER PARAMETERS:
             -10        20        30
              11        31        12



     REAL PARAMETERS:
          0.5000E+01    0.9000E+01



     STOP



The Sun Performance Library will detect all instances in which the calling subprogram specifies one or more illegal parameter values, but there are many types of interface errors that the Sun Performance Library will not detect. Included in the list of interface errors that the Sun Performance Library will not detect is specifying too many or too few arguments, specifying an argument of the wrong type, and aliasing an argument with the result argument.




Previous Next Contents Generated Index Doc Set Home