version 1.33, 2010/05/10 08:30:55
|
version 1.35, 2010/05/16 19:36:20
|
Line 32
|
Line 32
|
# define _DARWIN_C_SOURCE |
# define _DARWIN_C_SOURCE |
#endif |
#endif |
|
|
|
|
/* |
/* |
================================================================================ |
================================================================================ |
INCLUSIONS |
INCLUSIONS |
Line 368 int sem_getvalue2(sem_t *semaphore, int
|
Line 367 int sem_getvalue2(sem_t *semaphore, int
|
# define abs(i) (((i) >= 0) ? (i) : (-i)) |
# define abs(i) (((i) >= 0) ? (i) : (-i)) |
#endif |
#endif |
|
|
#define BUG(b, ...) \ |
|
do { if (b) { uprintf("[%d] BUG! <%s()> at line #%d of %s\n", \ |
|
(int) getpid(), __FUNCTION__, __LINE__, __FILE__); \ |
|
__VA_ARGS__; fflush(stdout); \ |
|
pthread_kill(pthread_self(), SIGBUS); }} while(0) |
|
|
|
#define NOTICE(m) \ |
#define NOTICE(m) \ |
do \ |
do \ |
{ \ |
{ \ |
Line 385 int sem_getvalue2(sem_t *semaphore, int
|
Line 378 int sem_getvalue2(sem_t *semaphore, int
|
|
|
#ifdef __GLIBC__ |
#ifdef __GLIBC__ |
#include <execinfo.h> |
#include <execinfo.h> |
|
#define __BACKTRACE |
#define BACKTRACE(n) \ |
#define BACKTRACE(n) \ |
do \ |
do \ |
{ \ |
{ \ |
Line 413 int sem_getvalue2(sem_t *semaphore, int
|
Line 407 int sem_getvalue2(sem_t *semaphore, int
|
#define BACKTRACE(n) NOTICE("BACKTRACE only defined in glibc") |
#define BACKTRACE(n) NOTICE("BACKTRACE only defined in glibc") |
#endif |
#endif |
|
|
|
#ifdef __BACKTRACE |
|
# define BUG(b, ...) \ |
|
do { if (b) { uprintf("[%d] BUG! <%s()> at line #%d of %s\n", \ |
|
(int) getpid(), __FUNCTION__, __LINE__, __FILE__); \ |
|
__VA_ARGS__; fflush(stdout); \ |
|
BACKTRACE(64); \ |
|
pthread_kill(pthread_self(), SIGBUS); }} while(0) |
|
#else |
|
# define BUG(b, ...) \ |
|
do { if (b) { uprintf("[%d] BUG! <%s()> at line #%d of %s\n", \ |
|
(int) getpid(), __FUNCTION__, __LINE__, __FILE__); \ |
|
__VA_ARGS__; fflush(stdout); \ |
|
pthread_kill(pthread_self(), SIGBUS); }} while(0) |
|
#endif |
|
|
|
|
/* |
/* |
================================================================================ |
================================================================================ |
Line 421 int sem_getvalue2(sem_t *semaphore, int
|
Line 430 int sem_getvalue2(sem_t *semaphore, int
|
*/ |
*/ |
|
|
#ifdef DEBUG_MEMOIRE |
#ifdef DEBUG_MEMOIRE |
|
void analyse_post_mortem(); |
void *debug_memoire_ajout(size_t taille, const unsigned char *fonction, |
void *debug_memoire_ajout(size_t taille, const unsigned char *fonction, |
unsigned long ligne, const unsigned char *argument); |
unsigned long ligne, const unsigned char *argument); |
void *debug_memoire_modification(void *pointeur, size_t taille, |
void *debug_memoire_modification(void *pointeur, size_t taille, |
const unsigned char *fonction, unsigned long ligne, |
const unsigned char *fonction, unsigned long ligne, |
const unsigned char *argument); |
const unsigned char *argument); |
void debug_memoire_retrait(void *ptr); |
void debug_memoire_retrait(void *ptr); |
|
void debug_memoire_verification(); |
|
|
#define malloc(s) debug_memoire_ajout(s, __FUNCTION__, __LINE__, #s) |
#define malloc(s) debug_memoire_ajout(s, __FUNCTION__, __LINE__, #s) |
#define free(s) debug_memoire_retrait(s) |
#define free(s) debug_memoire_retrait(s) |
Line 2241 void instruction_print(struct_processus
|
Line 2252 void instruction_print(struct_processus
|
void instruction_private(struct_processus *s_etat_processus); |
void instruction_private(struct_processus *s_etat_processus); |
void instruction_prlcd(struct_processus *s_etat_processus); |
void instruction_prlcd(struct_processus *s_etat_processus); |
void instruction_prmd(struct_processus *s_etat_processus); |
void instruction_prmd(struct_processus *s_etat_processus); |
|
void instruction_procid(struct_processus *s_etat_processus); |
void instruction_prompt(struct_processus *s_etat_processus); |
void instruction_prompt(struct_processus *s_etat_processus); |
void instruction_protect(struct_processus *s_etat_processus); |
void instruction_protect(struct_processus *s_etat_processus); |
void instruction_prst(struct_processus *s_etat_processus); |
void instruction_prst(struct_processus *s_etat_processus); |
Line 2474 void *allocation_maillon(struct_processu
|
Line 2486 void *allocation_maillon(struct_processu
|
|
|
#ifndef RPLARGS |
#ifndef RPLARGS |
void analyse(struct_processus *s_etat_processus, void (*fonction)()); |
void analyse(struct_processus *s_etat_processus, void (*fonction)()); |
inline void *analyse_instruction(struct_processus *s_etat_processus, |
void *analyse_instruction(struct_processus *s_etat_processus, |
unsigned char *candidat); |
unsigned char *candidat); |
void appel_gnuplot(struct_processus *s_etat_processus, |
void appel_gnuplot(struct_processus *s_etat_processus, |
unsigned char persistance); |
unsigned char persistance); |
Line 2492 void conversion_majuscule_limitee(unsign
|
Line 2504 void conversion_majuscule_limitee(unsign
|
void conversion_radians_vers_degres(real8 *angle); |
void conversion_radians_vers_degres(real8 *angle); |
void correction_formateur_tex(struct_processus *s_etat_processus, |
void correction_formateur_tex(struct_processus *s_etat_processus, |
unsigned char **ligne); |
unsigned char **ligne); |
void debug_memoire_verification(struct_processus *s_etat_processus); |
|
void depilement_pile_systeme(struct_processus *s_etat_processus); |
void depilement_pile_systeme(struct_processus *s_etat_processus); |
void derivation(struct_processus *s_etat_processus, |
void derivation(struct_processus *s_etat_processus, |
struct_objet **s_expression); |
struct_objet **s_expression); |
Line 2586 void retrait_thread(struct_processus *s_
|
Line 2597 void retrait_thread(struct_processus *s_
|
void retrait_thread_surveillance(struct_processus *s_etat_processus, |
void retrait_thread_surveillance(struct_processus *s_etat_processus, |
struct_descripteur_thread *s_argument_thread); |
struct_descripteur_thread *s_argument_thread); |
void rplcore(struct_processus *s_etat_processus); |
void rplcore(struct_processus *s_etat_processus); |
inline void scrutation_injection(struct_processus *s_etat_processus); |
void scrutation_injection(struct_processus *s_etat_processus); |
void sf(struct_processus *s_etat_processus, unsigned char indice_drapeau); |
void sf(struct_processus *s_etat_processus, unsigned char indice_drapeau); |
void *surveillance_processus(void *argument); |
void *surveillance_processus(void *argument); |
void swap(void *variable_1, void *variable_2, unsigned long taille_octets); |
void swap(void *variable_1, void *variable_2, unsigned long taille_octets); |
Line 2806 logical1 test_fonction(unsigned char *ch
|
Line 2817 logical1 test_fonction(unsigned char *ch
|
*/ |
*/ |
|
|
#ifndef RPLARGS |
#ifndef RPLARGS |
inline ssize_t read_atomic(struct_processus *s_etat_processus, |
ssize_t read_atomic(struct_processus *s_etat_processus, |
int fd, void *buf, size_t count); |
int fd, void *buf, size_t count); |
inline ssize_t write_atomic(struct_processus *s_etat_processus, |
ssize_t write_atomic(struct_processus *s_etat_processus, |
int fd, void *buf, size_t count); |
int fd, void *buf, size_t count); |
#endif |
#endif |
|
|
Line 3198 void zgelsy_(integer4 *m, integer4 *n, i
|
Line 3209 void zgelsy_(integer4 *m, integer4 *n, i
|
* drapeau depuis une bibliothèque). |
* drapeau depuis une bibliothèque). |
*/ |
*/ |
|
|
inline int test_arret(struct_processus *s_etat_processus); |
int test_arret(struct_processus *s_etat_processus); |
|
|
#endif |
#endif |
|
|