Secrets of F90 compiler optimization

4. All possible combinations and their results

rule


          Specify            Message?            Get             Same as
   ------------------------  -------   ------------------------  --------
   [-O not specified]                  -O vector2,scalar2,task1  -O 2

   -O 0                                -O vector0,scalar0,task0
   -O 1                                -O vector1,scalar1,task1
   -O 2                                -O vector2,scalar2,task1
   -O 3                                -O vector3,scalar2,task2

   -O                 task0            -O vector2,scalar2,task0
   -O                 task1            -O vector2,scalar2,task1  -O 2
   -O                 task2            -O vector2,scalar2,task2
   -O                 task3  WARNING   -O vector3,scalar2,task3

   -O         scalar0        WARNING   -O vector0,scalar0,task1
   -O         scalar0,task0  WARNING   -O vector0,scalar0,task0  -O 0
   -O         scalar0,task1  WARNING   -O vector0,scalar0,task1
   -O         scalar0,task2  ERROR
   -O         scalar0,task3  ERROR

   -O         scalar1        WARNING   -O vector1,scalar1,task1  -O 1
   -O         scalar1,task0  WARNING   -O vector1,scalar1,task0
   -O         scalar1,task1  WARNING   -O vector1,scalar1,task1  -O 1
   -O         scalar1,task2  ERROR
   -O         scalar1,task3  ERROR

   -O         scalar2                  -O vector2,scalar2,task1  -O 2
   -O         scalar2,task0            -O vector2,scalar2,task0
   -O         scalar2,task1            -O vector2,scalar2,task1  -O 2
   -O         scalar2,task2            -O vector2,scalar2,task2
   -O         scalar2,task3  WARNING   -O vector3,scalar2,task3

   -O         scalar3                  -O vector2,scalar3,task1
   -O         scalar3,task0            -O vector2,scalar3,task0
   -O         scalar3,task1            -O vector2,scalar3,task1
   -O         scalar3,task2            -O vector2,scalar3,task2
   -O         scalar3,task3  WARNING   -O vector3,scalar3,task3

   -O vector0                          -O vector0,scalar2,task1
   -O vector0        ,task0            -O vector0,scalar2,task0
   -O vector0        ,task1            -O vector0,scalar2,task1
   -O vector0        ,task2  ERROR
   -O vector0        ,task3  ERROR

   -O vector0,scalar0                  -O vector0,scalar0,task1
   -O vector0,scalar0,task0            -O vector0,scalar0,task0  -O 0
   -O vector0,scalar0,task1            -O vector0,scalar0,task1
   -O vector0,scalar0,task2  ERROR
   -O vector0,scalar0,task3  ERROR

   -O vector0,scalar1                  -O vector0,scalar1,task1
   -O vector0,scalar1,task0            -O vector0,scalar1,task0
   -O vector0,scalar1,task1            -O vector0,scalar1,task1
   -O vector0,scalar1,task2  ERROR
   -O vector0,scalar1,task3  ERROR

   -O vector0,scalar2                  -O vector0,scalar2,task1
   -O vector0,scalar2,task0            -O vector0,scalar2,task0
   -O vector0,scalar2,task1            -O vector0,scalar2,task1
   -O vector0,scalar2,task2  ERROR
   -O vector0,scalar2,task3  ERROR

   -O vector0,scalar3                  -O vector0,scalar3,task1
   -O vector0,scalar3,task0            -O vector0,scalar3,task0
   -O vector0,scalar3,task1            -O vector0,scalar3,task1
   -O vector0,scalar3,task2  ERROR
   -O vector0,scalar3,task3  ERROR

   -O vector1                          -O vector1,scalar2,task1
   -O vector1        ,task0            -O vector1,scalar2,task0
   -O vector1        ,task1            -O vector1,scalar2,task1
   -O vector1        ,task2  ERROR
   -O vector1        ,task3  ERROR

   -O vector1,scalar0        ERROR
   -O vector1,scalar0,task0  ERROR
   -O vector1,scalar0,task1  ERROR
   -O vector1,scalar0,task2  ERROR
   -O vector1,scalar0,task3  ERROR

   -O vector1,scalar1                  -O vector1,scalar1,task1  -O 1
   -O vector1,scalar1,task0            -O vector1,scalar1,task0
   -O vector1,scalar1,task1            -O vector1,scalar1,task1  -O 1
   -O vector1,scalar1,task2  ERROR
   -O vector1,scalar1,task3  ERROR

   -O vector1,scalar2                  -O vector1,scalar2,task1
   -O vector1,scalar2,task0            -O vector1,scalar2,task0
   -O vector1,scalar2,task1            -O vector1,scalar2,task1
   -O vector1,scalar2,task2  ERROR
   -O vector1,scalar2,task3  ERROR

   -O vector1,scalar3                  -O vector1,scalar3,task1
   -O vector1,scalar3,task0            -O vector1,scalar3,task0
   -O vector1,scalar3,task1            -O vector1,scalar3,task1
   -O vector1,scalar3,task2  ERROR
   -O vector1,scalar3,task3  ERROR

   -O vector2                          -O vector2,scalar2,task1  -O 2
   -O vector2        ,task0            -O vector2,scalar2,task0
   -O vector2        ,task1            -O vector2,scalar2,task1  -O 2
   -O vector2        ,task2            -O vector2,scalar2,task2
   -O vector2        ,task3  ERROR

   -O vector2,scalar0        ERROR
   -O vector2,scalar0,task0  ERROR
   -O vector2,scalar0,task1  ERROR
   -O vector2,scalar0,task2  ERROR
   -O vector2,scalar0,task3  ERROR

   -O vector2,scalar1        ERROR
   -O vector2,scalar1,task0  ERROR
   -O vector2,scalar1,task1  ERROR
   -O vector2,scalar1,task2  ERROR
   -O vector2,scalar1,task3  ERROR

   -O vector2,scalar2                  -O vector2,scalar2,task1  -O 2
   -O vector2,scalar2,task0            -O vector2,scalar2,task0
   -O vector2,scalar2,task1            -O vector2,scalar2,task1  -O 2
   -O vector2,scalar2,task2            -O vector2,scalar2,task2
   -O vector2,scalar2,task3  ERROR

   -O vector2,scalar3                  -O vector2,scalar3,task1
   -O vector2,scalar3,task0            -O vector2,scalar3,task0
   -O vector2,scalar3,task1            -O vector2,scalar3,task1
   -O vector2,scalar3,task2            -O vector2,scalar3,task2
   -O vector2,scalar3,task3  ERROR

   -O vector3                          -O vector3,scalar2,task1
   -O vector3        ,task0            -O vector3,scalar2,task0
   -O vector3        ,task1            -O vector3,scalar2,task1
   -O vector3        ,task2            -O vector3,scalar2,task2  -O 3
   -O vector3        ,task3            -O vector3,scalar2,task3

   -O vector3,scalar0        ERROR
   -O vector3,scalar0,task0  ERROR
   -O vector3,scalar0,task1  ERROR
   -O vector3,scalar0,task2  ERROR
   -O vector3,scalar0,task3  ERROR

   -O vector3,scalar1        ERROR
   -O vector3,scalar1,task0  ERROR
   -O vector3,scalar1,task1  ERROR
   -O vector3,scalar1,task2  ERROR
   -O vector3,scalar1,task3  ERROR

   -O vector3,scalar2                  -O vector3,scalar2,task1
   -O vector3,scalar2,task0            -O vector3,scalar2,task0
   -O vector3,scalar2,task1            -O vector3,scalar2,task1
   -O vector3,scalar2,task2            -O vector3,scalar2,task2  -O 3
   -O vector3,scalar2,task3            -O vector3,scalar2,task3

   -O vector3,scalar3                  -O vector3,scalar3,task1
   -O vector3,scalar3,task0            -O vector3,scalar3,task0
   -O vector3,scalar3,task1            -O vector3,scalar3,task1
   -O vector3,scalar3,task2            -O vector3,scalar3,task2
   -O vector3,scalar3,task3            -O vector3,scalar3,task3


rule

back Back