# HG changeset patch # User nick # Date 1005489679 0 # Node ID 99d169b25fbf9e50ca76dc7ab3bc64d891340d6e # Parent 7746bf29000ae16f83b67e6b457902d2761035b9 Precised profile stuff diff -r 7746bf29000a -r 99d169b25fbf Makefile --- a/Makefile Sun Nov 11 13:48:11 2001 +0000 +++ b/Makefile Sun Nov 11 14:41:19 2001 +0000 @@ -24,7 +24,7 @@ SRCS_MENCODER = divx4_vbr.c mencoder.c libvo/aclib.c libvo/img_format.c ima4.c xacodec.c cpudetect.c mp_msg.c ac3-iec958.c dec_audio.c dec_video.c msvidc.c codec-cfg.c cfgparser.c OBJS_MENCODER = $(SRCS_MENCODER:.c=.o) -SRCS_MPLAYER = mplayer.c ima4.c xacodec.c cpudetect.c mp_msg.c ac3-iec958.c find_sub.c dec_audio.c dec_video.c msvidc.c codec-cfg.c subreader.c lirc_mp.c cfgparser.c mixer.c spudec.c +SRCS_MPLAYER = mplayer.c ima4.c xacodec.c cpudetect.c mp_msg.c ac3-iec958.c find_sub.c dec_audio.c dec_video.c msvidc.c codec-cfg.c subreader.c lirc_mp.c cfgparser.c mixer.c spudec.c my_profile.c OBJS_MPLAYER = $(SRCS_MPLAYER:.c=.o) CFLAGS = $(OPTFLAGS) -Ilibmpdemux -Iloader -Ilibvo $(EXTRA_INC) $(MADLIB_INC) # -Wall A_LIBS = -Lmp3lib -lMP3 -Llibac3 -lac3 $(ALSA_LIB) $(ESD_LIB) $(MADLIB_LIB) $(SGI_AUDIO_LIB) diff -r 7746bf29000a -r 99d169b25fbf my_profile.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/my_profile.c Sun Nov 11 14:41:19 2001 +0000 @@ -0,0 +1,13 @@ +/* + * my_profile.c + * + * Copyright (C) Nick Kurshev - Oct 2001 + * + * You can redistribute this file under terms and conditions + * of GNU General Public licence v2. + * This file is partly based on vbetest.c from lrmi distributive. + */ + +#include "my_profile.h" + +unsigned long long int my_profile_start,my_profile_end,my_profile_total=0ULL; diff -r 7746bf29000a -r 99d169b25fbf my_profile.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/my_profile.h Sun Nov 11 14:41:19 2001 +0000 @@ -0,0 +1,33 @@ +/* + * my_profile.h + * + * Copyright (C) Nick Kurshev - Oct 2001 + * + * You can redistribute this file under terms and conditions + * of GNU General Public licence v2. + * This file is partly based on vbetest.c from lrmi distributive. + */ +#ifndef MY_PROFILE_INC +#define MY_PROFILE_INC + +extern unsigned long long int my_profile_start,my_profile_end,my_profile_total; + +#if defined ( ENABLE_PROFILE ) && defined ( ARCH_X86 ) +static inline unsigned long long int read_tsc( void ) +{ + unsigned long long int retval; + __asm __volatile ("rdtsc":"=A"(retval)::"memory"); + return retval; +} + +#define PROFILE_START() (my_profile_start=read_tsc()) +#define PROFILE_END(your_message) { my_profile_end=read_tsc(); my_profile_total+=my_profile_end - my_profile_start; printf(your_message" current=%llu total=%llu\n\t",my_profile_end-my_profile_start,my_profile_total); } +#else +#define PROFILE_INIT() +#define PROFILE_START() +#define PROFILE_END(your_message) +#endif + + + +#endif \ No newline at end of file