Changeset 3fc03fd in mainline for arch


Ignore:
Timestamp:
2005-12-14T20:34:15Z (20 years ago)
Author:
Ondrej Palkovsky <ondrap@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
dc747e3
Parents:
d91e54b
Message:

Better gcc CALLER implementation

Location:
arch
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • arch/ia32/include/debug.h

    rd91e54b r3fc03fd  
    3232#include <arch/asm.h>
    3333
    34 /** Return caller of this function
    35  *
    36  * @param first_arg First argument of the function
    37  */
    38 #define CALLER(first_arg)        ((__address *) &first_arg)[-1];
    39 
    4034#define HERE get_ip()
    4135
  • arch/mips32/include/debug.h

    rd91e54b r3fc03fd  
    4343#define ___intmode()    asm volatile ( "\t.word\t0x29\n");
    4444
    45 /** Return current IP address */
    46 static inline __address * _get_ra()
    47 {
    48         __address *ip;
    49 
    50         __asm__ volatile (
    51                 "mov %%31, %0"
    52                 : "=r" (ip)
    53                 );
    54         return ip;
    55 }
    56 #define CALLER(first_arg)    (_get_ra())
    57 
    5845
    5946#endif
Note: See TracChangeset for help on using the changeset viewer.