OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [gdb-7.2/] [gdb/] [doc/] [stack_frame.txt] - Rev 330

Go to most recent revision | Compare with Previous | Blame | View Log

                  ^    ->|            |
Frame             |   |  |            |
Number          - |   |  |============|       int fact (int n)
               |  |   |  |   i = 3    |       {
               |  |   |  |------------|         if (0 == n) {
               |  |   |  |   f = ?    |           return  1;  <-------- PC
  #4 main()   <   |   |  |------------|        }
               |  |   |  |            |         else {
               |  |  -+->|------------|   --->    return n * fact (n - 1);
               |   -+-+--+-----o      |  |      }
                =   | |  |============|  |    }
               |    | |  |   n = 3    |  |
               |    | |  |------------|  |    main ()
  #3 fact (3) <     | |  |     o---------+-   {
               |   -+-+->|------------|  | |    int  i;
               |  | |  --+-----o      |  | |
                = | |    |============|  | |    for (i = 0; i < 10; i++) {
               |  | |    |   n = 2    |  |  ->    int  f = fact (i);
               |  | |    |------------|  |        printf ("%d! = %d\n", i , f);
  #2 fact (2) <   | |    |     o------+--|      }
               |  | |  ->|------------|  |    }
               |  |  -+--+-----o      |  |
                = |   |  |============|  |
               |  |   |  |   n = 1    |  |
               |  |   |  |------------|  |
  #1 fact (1) <   |   |  |     o------+--|
               |  |   |  |------------|  |
               |   ---|--+-----o      |<-+------- FP
                =     |  |============|  |                   |
               |      |  |   n = 0    |  |                   |
               |      |  |------------|  |                   |
  #0 fact (0) <       |  |     o---------                    |
               |      |  |------------|                      |
               |       --+-----o      |<--------- SP         |
                =        |============|                      |
               |         |  Red Zone  |                      v  
               |         \/\/\/\/\/\/\/                 Direction of
  #-1         <          \/\/\/\/\/\/\/                 stack growth
               |         |            |

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.