[M3commit] CVS Update: cm3

Jay Krell jkrell at elego.de
Sun Apr 11 05:41:05 CEST 2010


CVSROOT:	/usr/cvs
Changes by:	jkrell at birch.	10/04/11 05:41:05

Modified files:
	cm3/m3-libs/m3core/src/: m3core.h 
	cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3 
	                                        ThreadPThread.m3 
	                                        ThreadPThreadC.c 
	cm3/m3-libs/m3core/src/time/POSIX/: TimePosixC.c m3makefile 
	cm3/m3-libs/m3core/src/unix/Common/: Utime.i3 UtimeC.c 

Log message:
	remove use of struct timespec (nanotime) and struct timeval (microtime)
	by passing double/LONGREAL/Time.T/TimeT to C and do the conversion in C,
	for select (microtime) and CommonSleep/nanosleep (nanotime) and
	pthread_cond_timedwait (microtime)
	
	also pay better attention to the nanosleep return value
	I thought maybe this was why the PPC64_DARWIN hang but unfortunately not
	
	As well, if preferred, we can do the float to time struct
	conversion in Modula-3 to "idealized" structs and pass those down
	
	Not also that struct timeval and timespec are
	among the fairly safe header clone parts, maybe
	ok to keep them.
	
	Header cloning was far worse when it was per-target.
	
	remove timespec/nanosleep from m3core/src/unix
	timeval left alone as it is a bunch of other users
	
	TimePosixC.c was previously not yet used, so existing code #if 0'ed out




More information about the M3commit mailing list