ChangeLog 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894
  1. 2005-06-12 Ross Johnson <rpj@callisto.canberra.edu.au>
  2. * stress1.c (millisecondsFromNow): Remove limit 0 <= millisecs < 1000;
  3. now works for -INT_MAX <= millisecs <= INT_MAX; not needed for
  4. stress1.c but should be general anyway.
  5. 2005-05-18 Ross Johnson <rpj@callisto.canberra.edu.au>
  6. * reuse2.c (main): Must use a read with memory barrier semantics
  7. when polling 'done' to force the cache into coherence on MP systems.
  8. 2005-05-15 Ross Johnson <rpj@callisto.canberra.edu.au>
  9. * detach1.c: New test.
  10. * join1.c: Reduce sleep times.
  11. * join0.c: Remove MSVCRT conditional compile - join should always
  12. return the thread exit code.
  13. * join1.c: Likewise.
  14. * join2.c: Likewise.
  15. * join3.c: Likewise.
  16. 2005-04-18 Ross Johnson <rpj@callisto.canberra.edu.au>
  17. * condvar3.c: Remove locks from around signalling calls - should not
  18. be required for normal operation and only serve to mask deficiencies;
  19. ensure that CV destruction is not premature after removing guards.
  20. * condvar3_1.c: Likewise.
  21. * condvar3_2.c: Likewise.
  22. * condvar3_3.c: Likewise.
  23. * condvar4.c: Likewise.
  24. * condvar5.c: Likewise.
  25. * condvar6.c: Likewise.
  26. * condvar7.c: Likewise.
  27. * condvar8.c: Likewise.
  28. * condvar9.c: Likewise.
  29. 2005-04-11 Ross Johnson <rpj@callisto.canberra.edu.au>
  30. * once4.c: New test; tries to test priority adjustments
  31. in pthread_once(); set priority class to realtime so that
  32. any failures can be seen.
  33. 2005-04-06 Ross Johnson <rpj@callisto.canberra.edu.au>
  34. * cleanup0.c: Fix unguarded global variable accesses.
  35. * cleanup1.c: Likewise.
  36. * cleanup2.c: Likewise.
  37. * cleanup3.c: Likewise.
  38. * once2.c: Likewise.
  39. * once3.c: Likewise.
  40. 2005-04-01 Ross Johnson <rpj@callisto.canberra.edu.au>
  41. * GNUmakefile: Add target to test linking static link library.
  42. * Makefile: Likewise.
  43. * self1.c: Run process attach/detach routines when static linked.
  44. 2005-03-16 Ross Johnson <rpj@callisto.canberra.edu.au>
  45. * mutex5.c: Prevent optimiser from removing asserts.
  46. 2005-03-12 Ross Johnson <rpj@callisto.canberra.edu.au>
  47. * once3.c: New test.
  48. 2005-03-08 Ross Johnson <rpj@callisto.canberra.edu.au>
  49. * once2.c: New test.
  50. 2004-11-19 Ross Johnson <rpj@callisto.canberra.edu.au>
  51. * Bmakefile: New makefile for Borland.
  52. * Makefile (DLL_VER): Added.
  53. * GNUmakefile (DLL_VER): Added.
  54. * Wmakefile (DLL_VER): Added.
  55. 2004-10-29 Ross Johnson <rpj@callisto.canberra.edu.au>
  56. * semaphore4.c: New test.
  57. * semaphore4t.c: New test.
  58. * Debug.dsp (et al): Created MSVC Workspace project to aid debugging.
  59. * All: Many tests have been modified to work with the new pthread
  60. ID type; some other corrections were made after some library
  61. functions were semantically strengthened. For example,
  62. pthread_cond_destroy() no longer destroys a busy CV, which
  63. required minor redesigns of some tests, including some where
  64. the mutex associated with the CV was not locked during
  65. signaling and broadcasting.
  66. 2004-10-23 Ross Johnson <rpj@callisto.canberra.edu.au>
  67. * condvar3.c: Fixed mutex operations that were incorrectly
  68. placed in relation to their condition variable operations.
  69. The error became evident after sem_destroy() was rewritten
  70. and conditions for destroing the semaphore were tightened.
  71. As a result, pthread_cond_destroy() was not able to
  72. destroy the cv queueing sempahore.
  73. * condvar3_1.c: Likewise.
  74. * condvar3_2.c: Likewise.
  75. * condvar4.c: Likewise.
  76. * condvar5.c: Likewise.
  77. * condvar6.c: Likewise.
  78. * condvar7.c: Likewise.
  79. * condvar8.c: Likewise.
  80. * condvar9.c: Likewise.
  81. 2004-10-19 Ross Johnson <rpj@callisto.canberra.edu.au>
  82. * semaphore3.c: New test.
  83. 2004-10-14 Ross Johnson <rpj@callisto.canberra.edu.au>
  84. * rwlock7.c (main): Tidy up statistics reporting; randomise
  85. update accesses.
  86. * rwlock8.c: New test.
  87. 2004-09-08 Alexandre Girao <alexgirao@gmail.com>
  88. * cancel7.c (main): Win98 wants a valid (non-NULL) location
  89. for the last arg of _beginthreadex().
  90. * cancel8.c (main): Likewise.
  91. * exit4.c (main): Likewise.
  92. * exit5.c (main): Likewise.
  93. 2004-08-26 Ross Johnson <rpj@callisto.canberra.edu.au>
  94. * create3.c: New test.
  95. 2004-06-21 Ross Johnson <rpj@callisto.canberra.edu.au>
  96. * mutex2r.c: New test.
  97. * mutex2e.c: New test.
  98. * mutex3r.c: New test.
  99. * mutex3e.c: New test.
  100. * mutex6s.c: New test.
  101. * mutex6rs.c: New test.
  102. * mutex6es.c: New test.
  103. 2004-05-21 Ross Johnson <rpj@callisto.canberra.edu.au>
  104. * join3.c: New test.
  105. 2004-05-16 Ross Johnson <rpj@callisto.canberra.edu.au>
  106. * condvar2.c (WIN32_WINNT): Define to avoid redefinition warning
  107. from inclusion of implement.h.
  108. * convar2_1.c: Likewise.
  109. * condvar3_1.c: Likewise.
  110. * condvar3_2.c: Likewise.
  111. * context1.c: Likewise.
  112. * sizes.c: Likewise.
  113. * Makefile: Don't define _WIN32_WINNT on compiler command line.
  114. * GNUmakefile: Likewise.
  115. * priority1.c (main): Add column to output for actual win32
  116. priority.
  117. 2004-05-16 Ross Johnson <rpj@callisto.canberra.edu.au>
  118. * cancel9.c: New test.
  119. * cancel3.c: Remove inappropriate conditional compilation;
  120. GNU C version of test suite no longer quietly skips this test.
  121. * cancel5.c: Likewise.
  122. * GNUmakefile: Can now build individual test app using default
  123. C version of library using 'make clean testname.c'.
  124. * Makefile: Likewise for VC using 'nmake clean test testname.c'.
  125. 2003-10-14 Ross Johnson <rpj@callisto.canberra.edu.au>
  126. * Wmakefile: New makefile for Watcom testing.
  127. 2003-09-18 Ross Johnson <rpj@callisto.canberra.edu.au>
  128. * benchtest.h: Move old mutex code into benchlib.c.
  129. * benchlib.c: New statically linked module to ensure that
  130. bench apps don't inline the code and therefore have an unfair
  131. advantage over the pthreads lib routines. Made little or no
  132. difference.
  133. * benchtest1.c: Minor change to avoid compiler warnings.
  134. * benchtest5.c: Likewise.
  135. * benchtest2.c: Fix misinformation in output report.
  136. * README.BENCH: Add comments on results.
  137. 2003-09-14 Ross Johnson <rpj@callisto.canberra.edu.au>
  138. * priority1.c: Reworked to comply with modified priority
  139. management and provide additional output.
  140. * priority2.c: Likewise.
  141. * inherit1.c: Likewise.
  142. 2003-09-03 Ross Johnson <rpj@callisto.canberra.edu.au>
  143. * exit4.c: New test.
  144. * exit5.c: New test.
  145. * cancel7.c: New test.
  146. * cancel8.c: New test.
  147. 2003-08-13 Ross Johnson <rpj@ise.canberra.edu.au>
  148. * reuse1.c: New test.
  149. * reuse1.c: New test.
  150. * valid1.c: New test.
  151. * valid2.c: New test.
  152. * kill1.c: New test.
  153. * create2.c: Now included in test regime.
  154. 2003-07-19 Ross Johnson <rpj@ise.canberra.edu.au>
  155. * eyal1.c (waste_time): Make threads do more work to ensure that
  156. all threads get to do some work.
  157. * semaphore1.c: Make it clear that certain errors are expected.
  158. * exception2.c (non_MSVC code sections): Change to include
  159. C++ standard include file, i.e. change <new.h> to <exception>.
  160. * exception3.c (non_MSVC code sections): Likewise; qualify std::
  161. namespace entities where necessary.
  162. * GNUmakefile: modified to work in the MsysDTK (newer MinGW)
  163. environment; define CC as gcc or g++ as appropriate because
  164. using gcc -x c++ doesn't link with required c++ libs by default,
  165. but g++ does.
  166. 2002-12-11 Ross Johnson <ross@special.ise.canberra.edu.au>
  167. * mutex7e.c: Assert EBUSY return instead of EDEADLK.
  168. 2002-06-03 Ross Johnson <rpj@digit.ise.canberra.edu.au>
  169. * semaphore2.c: New test.
  170. 2002-03-02 Ross Johnson <rpj@special.ise.canberra.edu.au>
  171. * Makefile (CFLAGS): Changed /MT to /MD to link with
  172. the correct library MSVCRT.LIB. Otherwise errno doesn't
  173. work.
  174. 2002-02-28 Ross Johnson <rpj@special.ise.canberra.edu.au>
  175. * exception3.c: Correct recent change.
  176. * semaphore1.c: New test.
  177. * Makefile: Add rule to generate pre-processor output.
  178. 2002-02-28 Ross Johnson <rpj@special.ise.canberra.edu.au>
  179. * exception3.c (terminateFunction): For MSVC++, call
  180. exit() rather than pthread_exit(). Add comments to explain
  181. why.
  182. * Notes from the MSVC++ manual:
  183. * 1) A term_func() should call exit(), otherwise
  184. * abort() will be called on return to the caller.
  185. * abort() raises SIGABRT. The default signal handler
  186. * for all signals terminates the calling program with
  187. * exit code 3.
  188. * 2) A term_func() must not throw an exception. Therefore
  189. * term_func() should not call pthread_exit() if an
  190. * an exception-using version of pthreads-win32 library
  191. * is being used (i.e. either pthreadVCE or pthreadVSE).
  192. 2002-02-23 Ross Johnson <rpj@special.ise.canberra.edu.au>
  193. * rwlock2_t.c: New test.
  194. * rwlock3_t.c: New test.
  195. * rwlock4_t.c: New test.
  196. * rwlock5_t.c: New test.
  197. * rwlock6_t.c: New test.
  198. * rwlock6_t2.c: New test.
  199. * rwlock6.c (main): Swap thread and result variables
  200. to correspond to actual thread functions.
  201. * rwlock1.c: Change test description comment to correspond
  202. to the actual test.
  203. * condvar1_2.c: Loop over the test many times in the hope
  204. of detecting any intermittent deadlocks. This is to
  205. test a fixed problem in pthread_cond_destroy.c.
  206. * spin4.c: Remove unused variable.
  207. 2002-02-17 Ross Johnson <rpj@special.ise.canberra.edu.au>
  208. * condvar1_1.c: New test.
  209. * condvar1_2.c: New test.
  210. 2002-02-07 Ross Johnson <rpj@special.ise.canberra.edu.au>
  211. * delay1.c: New test.
  212. * delay2.c: New test.
  213. * exit4.c: New test.
  214. 2002-02-02 Ross Johnson <rpj@special.ise.canberra.edu.au>
  215. * mutex8: New test.
  216. * mutex8n: New test.
  217. * mutex8e: New test.
  218. * mutex8r: New test.
  219. * cancel6a: New test.
  220. * cancel6d: New test.
  221. * cleanup0.c: Add pragmas for inline optimisation control.
  222. * cleanup1.c: Add pragmas for inline optimisation control.
  223. * cleanup2.c: Add pragmas for inline optimisation control.
  224. * cleanup3.c: Add pragmas for inline optimisation control.
  225. * condvar7.c: Add pragmas for inline optimisation control.
  226. * condvar8.c: Add pragmas for inline optimisation control.
  227. * condvar9.c: Add pragmas for inline optimisation control.
  228. 2002-01-30 Ross Johnson <rpj@special.ise.canberra.edu.au>
  229. * cleanup1.c (): Must be declared __cdecl when compiled
  230. as C++ AND testing the standard C library version.
  231. 2002-01-16 Ross Johnson <rpj@special.ise.canberra.edu.au>
  232. * spin4.c (main): Fix renamed function call.
  233. 2002-01-14 Ross Johnson <rpj@special.ise.canberra.edu.au>
  234. * exception3.c (main): Shorten wait time.
  235. 2002-01-09 Ross Johnson <rpj@special.ise.canberra.edu.au>
  236. * mutex7.c: New test.
  237. * mutex7n.c: New test.
  238. * mutex7e.c: New test.
  239. * mutex7r.c: New test.
  240. * mutex6.c: Modified to avoid leaving the locked mutex
  241. around on exit.
  242. 2001-10-25 Ross Johnson <rpj@setup1.ise.canberra.edu.au>
  243. * condvar2.c: Remove reference to cv->nWaitersUnblocked.
  244. * condvar2_1.c: Likewise; lower NUMTHREADS from 60 to 30.
  245. * condvar3_1.c: Likewise.
  246. * condvar3_2.c: Likewise.
  247. * count1.c: lower NUMTHREADS from 60 to 30.
  248. * inherit1.c: Determine valid priority values and then
  249. assert values returned by POSIX routines are the same.
  250. * priority1.c: Likewise.
  251. * priority2.c: Likewise.
  252. 2001-07-12 Ross Johnson <rpj@setup1.ise.canberra.edu.au>
  253. * barrier5.c: Assert that precisely one thread receives
  254. PTHREAD_BARRIER_SERIAL_THREAD at each barrier.
  255. 2001-07-09 Ross Johnson <rpj@setup1.ise.canberra.edu.au>
  256. * barrier3.c: Fixed.
  257. * barrier4.c: Fixed.
  258. * barrier5.c: New; proves that all threads in the group
  259. reaching the barrier wait and then resume together. Repeats the test
  260. using groups of 1 to 16 threads. Each group of threads must negotiate
  261. a large number of barriers (10000).
  262. * spin4.c: Fixed.
  263. * test.h (error_string): Modified the success (0) value.
  264. 2001-07-07 Ross Johnson <rpj@setup1.ise.canberra.edu.au>
  265. * spin3.c: Changed test and fixed.
  266. * spin4.c: Fixed.
  267. * barrier3.c: Fixed.
  268. * barrier4.c: Fixed.
  269. 2001-07-05 Ross Johnson <rpj@special.ise.canberra.edu.au>
  270. * spin1.c: New; testing spinlocks.
  271. * spin2.c: New; testing spinlocks.
  272. * spin3.c: New; testing spinlocks.
  273. * spin4.c: New; testing spinlocks.
  274. * barrier1.c: New; testing barriers.
  275. * barrier2.c: New; testing barriers.
  276. * barrier3.c: New; testing barriers.
  277. * barrier4.c: New; testing barriers.
  278. * GNUmakefile: Add new tests.
  279. * Makefile: Add new tests.
  280. 2001-07-01 Ross Johnson <rpj@special.ise.canberra.edu.au>
  281. * benchtest3.c: New; timing mutexes.
  282. * benchtest4.c: New; time mutexes.
  283. * condvar3_1.c: Fixed bug - Alexander Terekhov
  284. * condvar3_3.c: New test.
  285. 2001-06-25 Ross Johnson <rpj@special.ise.canberra.edu.au>
  286. * priority1.c: New test.
  287. * priority2.c: New test.
  288. * inherit1.c: New test.
  289. * benchtest1.c: New; timing mutexes.
  290. * benchtest2.c: New; timing mutexes.
  291. * mutex4.c: Modified to test all mutex types.
  292. 2001-06-8 Ross Johnson <rpj@special.ise.canberra.edu.au>
  293. * mutex5.c: Insert inert change to quell compiler warnings.
  294. * condvar3_2.c: Remove unused variable.
  295. 2001-06-3 Ross Johnson <rpj@special.ise.canberra.edu.au>
  296. * condvar2_1.c: New test.
  297. * condvar3_1.c: New test.
  298. * condvar3_2.c: New test.
  299. 2001-05-30 Ross Johnson <rpj@special.ise.canberra.edu.au>
  300. * mutex1n.c: New test.
  301. * mutex1e.c: New test.
  302. * mutex1r.c: New test.
  303. * mutex4.c: Now locks and unlocks a mutex.
  304. * mutex5.c: New test.
  305. * mutex6.c: New test.
  306. * mutex6n.c: New test.
  307. * mutex6e.c: New test.
  308. * mutex6r.c: New test.
  309. * Makefile: Added new tests; reorganised.
  310. * GNUmakefile: Likewise.
  311. * rwlock6.c: Fix to properly prove read-while-write locking
  312. and single writer locking.
  313. 2001-05-29 Ross Johnson <rpj@special.ise.canberra.edu.au>
  314. * Makefile: Reorganisation.
  315. * GNUmakefile: Likewise.
  316. - Thomas Pfaff <tpfaff@gmx.net>
  317. * exception1.c: Add stdio.h include to define fprintf and stderr
  318. in non-exception C version of main().
  319. * exception2.c: Likewise.
  320. * exception3.c: Likewise.
  321. * Makefile (rwlock7): Add new test.
  322. * GNUmakefile (rwlock7): Add new test.
  323. * rwlock7.c: New test.
  324. * rwlock6.c: Changed to test that writer has priority.
  325. * eyal1.c (main): Unlock each mutex_start lock before destroying
  326. it.
  327. 2000-12-29 Ross Johnson <rpj@special.ise.canberra.edu.au>
  328. * GNUmakefile: Add mutex4 test; ensure libpthreadw32.a is
  329. removed for "clean" target.
  330. * Makefile: Add mutex4 test.
  331. * exception3.c: Remove SEH code; automatically pass the test
  332. under SEH (which is an N/A environment).
  333. * mutex4.c: New test.
  334. * eyal1.c (do_work_unit): Add a dummy "if" to force the
  335. optimiser to retain code; reduce thread work loads.
  336. * condvar8.c (main): Add an additional "assert" for debugging;
  337. increase pthread_cond_signal timeout.
  338. 2000-12-28 Ross Johnson <rpj@special.ise.canberra.edu.au>
  339. * eyal1.c: Increase thread work loads.
  340. * exception2.c: New test.
  341. * exception3.c: New test.
  342. * Makefile: Add new tests exception2.c and exception3.c.
  343. * GNUmakefile: Likewise.
  344. 2000-12-11 Ross Johnson <rpj@special.ise.canberra.edu.au>
  345. * cleanup3.c: Remove unused variable.
  346. * cleanup2.c: Likewise.
  347. * exception1.c: Throw an exception rather than use
  348. a deliberate zero divide so that catch(...) will
  349. handle it under Mingw32. Mingw32 now builds the
  350. library correctly to pass all tests - see Thomas
  351. Pfaff's detailed instructions re needed changes
  352. to Mingw32 in the Pthreads-Win32 FAQ.
  353. 2000-09-08 Ross Johnson <rpj@special.ise.canberra.edu.au>
  354. * cancel5.c: New; tests calling pthread_cancel()
  355. from the main thread without first creating a
  356. POSIX thread struct for the non-POSIX main thread
  357. - this forces pthread_cancel() to create one via
  358. pthread_self().
  359. * Makefile (cancel5): Add new test.
  360. * GNUmakefile (cancel5): Likewise.
  361. 2000-08-17 Ross Johnson <rpj@special.ise.canberra.edu.au>
  362. * create2.c: New; Test that pthread_t contains
  363. the W32 HANDLE before it calls the thread routine
  364. proper.
  365. 2000-08-13 Ross Johnson <rpj@special.ise.canberra.edu.au>
  366. * condvar3.c: Minor change to eliminate compiler
  367. warning.
  368. * condvar4.c: ditto.
  369. * condvar5.c: ditto.
  370. * condvar6.c: ditto.
  371. * condvar7.c: ditto.
  372. * condvar8.c: ditto.
  373. * condvar9.c: ditto.
  374. * exit1.c: Function needed return statement.
  375. * cleanup1.c: Remove unnecessary printf arg.
  376. * cleanup2.c: Fix cast.
  377. * rwlock6.c: Fix casts.
  378. * exception1.c (PtW32CatchAll): Had the wrong name;
  379. fix casts.
  380. * cancel3.c: Remove unused waitLock variable.
  381. * GNUmakefile: Change library/dll naming; add new tests;
  382. general minor changes.
  383. * Makefile: Change library/dll naming; add targets for
  384. testing each of the two VC++ EH scheme versions;
  385. default target now issues help message; compile warnings
  386. now interpreted as errors to stop the make; add new
  387. tests; restructure to remove prerequisites needed
  388. otherwise.
  389. * README: Updated.
  390. 2000-08-10 Ross Johnson <rpj@special.ise.canberra.edu.au>
  391. * eyal1.c (main): Change implicit cast to explicit
  392. cast when passing "print_server" function pointer;
  393. G++ no longer allows implicit func parameter casts.
  394. * cleanup1.c: Remove unused "waitLock".
  395. (main): Fix implicit parameter cast.
  396. * cancel2.c (main): Fix implicit parameter cast.
  397. * cancel4.c (main): Fix implicit parameter cast.
  398. * cancel3.c (main): Fix implicit parameter cast.
  399. * GNUmakefile: Renamed from Makefile; Add missing
  400. cancel1 and cancel2 test targets.
  401. * Makefile: Converted for use with MS nmake.
  402. 2000-08-06 Ross Johnson <rpj@special.ise.canberra.edu.au>
  403. * ccl.bat: Add /nologo to remove extraneous output.
  404. * exception1.c (exceptionedThread): Init 'dummy';
  405. put expression into if condition to prevent optimising away;
  406. remove unused variable.
  407. * cancel4.c (mythread): Cast return value to avoid warnings.
  408. * cancel2.c (mythread): Missing #endif.
  409. * condvar9.c (mythread): Cast return value to avoid warnings.
  410. * condvar8.c (mythread): Cast return value to avoid warnings.
  411. * condvar7.c (mythread): Cast return value to avoid warnings.
  412. * cleanup3.c (mythread): Cast return value to avoid warnings.
  413. * cleanup2.c (mythread): Cast return value to avoid warnings.
  414. * cleanup1.c (mythread): Cast return value to avoid warnings.
  415. * condvar5.c (mythread): Cast return value to avoid warnings.
  416. * condvar3.c (mythread): Cast return value to avoid warnings.
  417. * condvar6.c (mythread): Cast return value to avoid warnings.
  418. * condvar4.c (mythread): Cast return value to avoid warnings.
  419. 2000-08-05 Ross Johnson <rpj@special.ise.canberra.edu.au>
  420. * cancel2.c: Use PtW32CatchAll macro if defined.
  421. * exception1.c: Use PtW32CatchAll macro if defined.
  422. 2000-08-02 Ross Johnson <rpj@special.ise.canberra.edu.au>
  423. * tsd1.c: Fix typecasts of &result [g++ is now very fussy].
  424. * test.h (assert): Return 0's explicitly to allay
  425. g++ errors.
  426. * join2.c: Add explicit typecasts.
  427. * join1.c: Add explicit typecasts.
  428. * join0.c: Add explicit typecasts.
  429. * eyal1.c: Add explicit typecasts.
  430. * count1.c (main): Add type cast to remove g++ parse warning
  431. [gcc-2.95.2 seems to have tightened up on this].
  432. * Makefile (GLANG): Use c++ explicitly.
  433. Remove MSVC sections (was commented out).
  434. Add target to generate cpp output.
  435. 2000-07-25 Ross Johnson <rpj@special.ise.canberra.edu.au>
  436. * runtest.bat: modified to work under W98.
  437. * runall.bat: Add new tests; modified to work under W98.
  438. It was ok under NT.
  439. * Makefile: Add new tests.
  440. * exception1.c: New; Test passing exceptions back to the
  441. application and retaining library internal exceptions.
  442. * join0.c: New; Test a single join.
  443. 2000-01-06 Ross Johnson <rpj@special.ise.canberra.edu.au>
  444. * cleanup1.c: New; Test cleanup handler executes (when thread is
  445. canceled).
  446. * cleanup2.c: New; Test cleanup handler executes (when thread is
  447. not canceled).
  448. * cleanup3.c: New; Test cleanup handler does not execute
  449. (when thread is not canceled).
  450. 2000-01-04 Ross Johnson <rpj@special.ise.canberra.edu.au>
  451. * cancel4.c: New; Test cancelation does not occur in deferred
  452. cancelation threads with no cancelation points.
  453. * cancel3.c: New; Test asynchronous cancelation.
  454. * context1.c: New; Test context switching method for async
  455. cancelation.
  456. 1999-11-23 Ross Johnson <rpj@special.ise.canberra.edu.au>
  457. * test.h: Add header includes; include local header versions rather
  458. than system versions; rearrange the assert macro defines.
  459. 1999-11-07 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  460. * loadfree.c: New. Test loading and freeing the library (DLL).
  461. 1999-10-30 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  462. * cancel1.c: New. Test pthread_setcancelstate and
  463. pthread_setcanceltype functions.
  464. * eyal1.c (waste_time): Change calculation to avoid FP exception
  465. on Aplhas
  466. - Rich Peters <rpeters@micro-magic.com>
  467. Oct 14 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  468. * condvar7.c: New. Test broadcast after waiting thread is canceled.
  469. * condvar8.c: New. Test multiple broadcasts.
  470. * condvar9.c: New. Test multiple broadcasts with thread
  471. cancelation.
  472. Sep 16 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  473. * rwlock6.c: New test.
  474. Sep 15 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  475. * rwlock1.c: New test.
  476. * rwlock2.c: New test.
  477. * rwlock3.c: New test.
  478. * rwlock4.c: New test.
  479. * rwlock5.c: New test.
  480. Aug 22 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  481. * runall.bat (join2): Add test.
  482. Aug 19 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  483. * join2.c: New test.
  484. Wed Aug 12 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  485. * Makefile (LIBS): Add -L.
  486. Mon May 31 10:25:01 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  487. * Makefile (GLANG): Add GCC language option.
  488. Sat May 29 23:29:04 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  489. * runall.bat (condvar5): Add new test.
  490. * runall.bat (condvar6): Add new test.
  491. * Makefile (condvar5) : Add new test.
  492. * Makefile (condvar6) : Add new test.
  493. * condvar5.c: New test for pthread_cond_broadcast().
  494. * condvar6.c: New test for pthread_cond_broadcast().
  495. Sun Apr 4 12:04:28 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  496. * tsd1.c (mythread): Change Sleep(0) to sched_yield().
  497. (sched.h): Include.
  498. * condvar3.c (mythread): Remove redundant Sleep().
  499. * runtest.bat: Re-organised to make more informative.
  500. Fri Mar 19 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  501. * *.bat: redirect unwanted output to nul:
  502. * runall.bat: new.
  503. * cancel1.c: new. Not part of suite yet.
  504. Mon Mar 15 00:17:55 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  505. * mutex1.c: only test mutex init and destroy; add assertions.
  506. * count1.c: raise number of spawned threads to 60 (appears to
  507. be the limit under Win98).
  508. Sun Mar 14 21:31:02 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  509. * test.h (assert): add assertion trace option.
  510. Use:
  511. "#define ASSERT_TRACE 1" to turn it on,
  512. "#define ASSERT_TRACE 0" to turn it off (default).
  513. * condvar3.c (main): add more assertions.
  514. * condvar4.c (main): add more assertions.
  515. * condvar1.c (main): add more assertions.
  516. Fri Mar 12 08:34:15 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  517. * condvar4.c (cvthing): switch the order of the INITIALIZERs.
  518. * eyal1.c (main): Fix trylock loop; was not waiting for thread to lock
  519. the "started" mutex.
  520. Wed Mar 10 10:41:52 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  521. * tryentercs.c: Apply typo patch from bje.
  522. * tryentercs2.c: Ditto.
  523. Sun Mar 7 10:41:52 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  524. * Makefile (condvar3, condvar4): Add tests.
  525. * condvar4.c (General): Reduce to simple test case; prerequisite
  526. is condvar3.c; add description.
  527. * condvar3.c (General): Reduce to simple test case; prerequisite
  528. is condvar2.c; add description.
  529. * condvar2.c (General): Reduce to simple test case; prerequisite
  530. is condvar1.c; add description.
  531. * condvar1.c (General): Reduce to simple test case; add
  532. description.
  533. * Template.c (Comments): Add generic test detail.
  534. 1999-02-23 Ross Johnson <rpj@ise.canberra.edu.au>
  535. * Template.c: Revamp.
  536. * condvar1.c: Add.
  537. * condvar2.c: Add.
  538. * Makefile: Add condvar1 condvar2 tests.
  539. * exit1.c, exit2.c, exit3.c: Cosmetic changes.
  540. 1999-02-23 Ross Johnson <rpj@ise.canberra.edu.au>
  541. * Makefile: Some refinement.
  542. * *.c: More exhaustive checking through assertions; clean up;
  543. add some more tests.
  544. * Makefile: Now actually runs the tests.
  545. * tests.h: Define our own assert macro. The Mingw32
  546. version pops up a dialog but we want to run non-interactively.
  547. * equal1.c: use assert a little more directly so that it
  548. prints the actual call statement.
  549. * exit1.c: Modify to return 0 on success, 1 on failure.
  550. 1999-02-22 Ross Johnson <rpj@ise.canberra.edu.au>
  551. * self2.c: Bring up to date.
  552. * self3.c: Ditto.
  553. 1999-02-21 Ben Elliston <bje@cygnus.com>
  554. * README: Update.
  555. * Makefile: New file. Run all tests automatically. Primitive tests
  556. are run first; more complex tests are run last.
  557. * count1.c: New test. Validate the thread count.
  558. * exit2.c: Perform a simpler test.
  559. * exit3.c: New test. Replaces exit2.c, since exit2.c needs to
  560. perform simpler checking first.
  561. * create1.c: Update to use the new testsuite exiting convention.
  562. * equal1.c: Likewise.
  563. * mutex1.c: Likewise.
  564. * mutex2.c: Likewise.
  565. * once1.c: Likewise.
  566. * self2.c: Likewise.
  567. * self3.c: Likewise.
  568. * tsd1.c: Likewise.
  569. 1999-02-20 Ross Johnson <rpj@ise.canberra.edu.au>
  570. * mutex2.c: Test static mutex initialisation.
  571. * test.h: New. Declares a table mapping error numbers to
  572. error names.
  573. 1999-01-17 Ross Johnson <rpj@ise.canberra.edu.au>
  574. * runtest: New script to build and run a test in the tests directory.
  575. Wed Dec 30 11:22:44 1998 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  576. * tsd1.c: Re-written. See comments at start of file.
  577. * Template.c: New. Contains skeleton code and comment template
  578. intended to fully document the test.
  579. Fri Oct 16 17:59:49 1998 Ross Johnson <rpj@swan.canberra.edu.au>
  580. * tsd1.c (destroy_key): Add function. Change diagnostics.
  581. Thu Oct 15 17:42:37 1998 Ross Johnson <rpj@swan.canberra.edu.au>
  582. * tsd1.c (mythread): Fix some casts and add some message
  583. output. Fix inverted conditional.
  584. Mon Oct 12 02:12:29 1998 Ross Johnson <rpj@ixobrychus.canberra.edu.au>
  585. * tsd1.c: New. Test TSD using 1 key and 2 threads.
  586. 1998-09-13 Ben Elliston <bje@cygnus.com>
  587. * eyal1.c: New file; contributed by Eyal Lebedinsky
  588. <eyal@eyal.emu.id.au>.
  589. 1998-09-12 Ben Elliston <bje@cygnus.com>
  590. * exit2.c (func): Return a value.
  591. (main): Call the right thread entry function.
  592. 1998-07-22 Ben Elliston <bje@cygnus.com>
  593. * exit2.c (main): Fix size of pthread_t array.
  594. 1998-07-10 Ben Elliston <bje@cygnus.com>
  595. * exit2.c: New file; test pthread_exit() harder.
  596. * exit1.c: New file; test pthread_exit().