12010-06-19 Ross Johnson <Ross dot Johnson at homemail dot com dot au> 2 3 * Makefile (STATICRESULTS): Add all tests into suite for static 4 library. 5 * GNUmakefile (STATICTESTS): Likewise, except for openmp1.c which 6 has a DLL dependency. 7 82010-02-04 Ross Johnson <Ross dot Johnson at homemail dot com dot au> 9 10 * openmp1.c: New; for libgomp compatibility (OpenMP). 11 * barrier5.c: Rewrite after changes to barriers. 12 * barrier6.c: New. 13 * benchtest6.c: New; timing barriers. 14 * GNUMakefile: Update for new tests. 15 * Makefile: Ditto. 16 * BMakefile: Ditto. 17 * once3.c: Improve cancelation testing. 18 * stress1.c: Fix comment. 19 202007-01-04 Ross Johnson <Ross dot Johnson at homemail dot com dot au> 21 22 * context1.c: Include context.h from library sources and remove 23 x86 dependence in main(). 24 252005-06-12 Ross Johnson <rpj@callisto.canberra.edu.au> 26 27 * stress1.c (millisecondsFromNow): Remove limit 0 <= millisecs < 1000; 28 now works for -INT_MAX <= millisecs <= INT_MAX; not needed for 29 stress1.c but should be general anyway. 30 312005-05-18 Ross Johnson <rpj@callisto.canberra.edu.au> 32 33 * reuse2.c (main): Must use a read with memory barrier semantics 34 when polling 'done' to force the cache into coherence on MP systems. 35 362005-05-15 Ross Johnson <rpj@callisto.canberra.edu.au> 37 38 * detach1.c: New test. 39 * join1.c: Reduce sleep times. 40 * join0.c: Remove MSVCRT conditional compile - join should always 41 return the thread exit code. 42 * join1.c: Likewise. 43 * join2.c: Likewise. 44 * join3.c: Likewise. 45 462005-04-18 Ross Johnson <rpj@callisto.canberra.edu.au> 47 48 * condvar3.c: Remove locks from around signalling calls - should not 49 be required for normal operation and only serve to mask deficiencies; 50 ensure that CV destruction is not premature after removing guards. 51 * condvar3_1.c: Likewise. 52 * condvar3_2.c: Likewise. 53 * condvar3_3.c: Likewise. 54 * condvar4.c: Likewise. 55 * condvar5.c: Likewise. 56 * condvar6.c: Likewise. 57 * condvar7.c: Likewise. 58 * condvar8.c: Likewise. 59 * condvar9.c: Likewise. 60 612005-04-11 Ross Johnson <rpj@callisto.canberra.edu.au> 62 63 * once4.c: New test; tries to test priority adjustments 64 in pthread_once(); set priority class to realtime so that 65 any failures can be seen. 66 672005-04-06 Ross Johnson <rpj@callisto.canberra.edu.au> 68 69 * cleanup0.c: Fix unguarded global variable accesses. 70 * cleanup1.c: Likewise. 71 * cleanup2.c: Likewise. 72 * cleanup3.c: Likewise. 73 * once2.c: Likewise. 74 * once3.c: Likewise. 75 762005-04-01 Ross Johnson <rpj@callisto.canberra.edu.au> 77 78 * GNUmakefile: Add target to test linking static link library. 79 * Makefile: Likewise. 80 * self1.c: Run process attach/detach routines when static linked. 81 822005-03-16 Ross Johnson <rpj@callisto.canberra.edu.au> 83 84 * mutex5.c: Prevent optimiser from removing asserts. 85 862005-03-12 Ross Johnson <rpj@callisto.canberra.edu.au> 87 88 * once3.c: New test. 89 902005-03-08 Ross Johnson <rpj@callisto.canberra.edu.au> 91 92 * once2.c: New test. 93 942004-11-19 Ross Johnson <rpj@callisto.canberra.edu.au> 95 96 * Bmakefile: New makefile for Borland. 97 * Makefile (DLL_VER): Added. 98 * GNUmakefile (DLL_VER): Added. 99 * Wmakefile (DLL_VER): Added. 100 1012004-10-29 Ross Johnson <rpj@callisto.canberra.edu.au> 102 103 * semaphore4.c: New test. 104 * semaphore4t.c: New test. 105 * Debug.dsp (et al): Created MSVC Workspace project to aid debugging. 106 * All: Many tests have been modified to work with the new pthread 107 ID type; some other corrections were made after some library 108 functions were semantically strengthened. For example, 109 pthread_cond_destroy() no longer destroys a busy CV, which 110 required minor redesigns of some tests, including some where 111 the mutex associated with the CV was not locked during 112 signaling and broadcasting. 113 1142004-10-23 Ross Johnson <rpj@callisto.canberra.edu.au> 115 116 * condvar3.c: Fixed mutex operations that were incorrectly 117 placed in relation to their condition variable operations. 118 The error became evident after sem_destroy() was rewritten 119 and conditions for destroing the semaphore were tightened. 120 As a result, pthread_cond_destroy() was not able to 121 destroy the cv queueing sempahore. 122 * condvar3_1.c: Likewise. 123 * condvar3_2.c: Likewise. 124 * condvar4.c: Likewise. 125 * condvar5.c: Likewise. 126 * condvar6.c: Likewise. 127 * condvar7.c: Likewise. 128 * condvar8.c: Likewise. 129 * condvar9.c: Likewise. 130 1312004-10-19 Ross Johnson <rpj@callisto.canberra.edu.au> 132 133 * semaphore3.c: New test. 134 1352004-10-14 Ross Johnson <rpj@callisto.canberra.edu.au> 136 137 * rwlock7.c (main): Tidy up statistics reporting; randomise 138 update accesses. 139 * rwlock8.c: New test. 140 1412004-09-08 Alexandre Girao <alexgirao@gmail.com> 142 143 * cancel7.c (main): Win98 wants a valid (non-NULL) location 144 for the last arg of _beginthreadex(). 145 * cancel8.c (main): Likewise. 146 * exit4.c (main): Likewise. 147 * exit5.c (main): Likewise. 148 1492004-08-26 Ross Johnson <rpj@callisto.canberra.edu.au> 150 151 * create3.c: New test. 152 1532004-06-21 Ross Johnson <rpj@callisto.canberra.edu.au> 154 155 * mutex2r.c: New test. 156 * mutex2e.c: New test. 157 * mutex3r.c: New test. 158 * mutex3e.c: New test. 159 * mutex6s.c: New test. 160 * mutex6rs.c: New test. 161 * mutex6es.c: New test. 162 1632004-05-21 Ross Johnson <rpj@callisto.canberra.edu.au> 164 165 * join3.c: New test. 166 1672004-05-16 Ross Johnson <rpj@callisto.canberra.edu.au> 168 169 * condvar2.c (WIN32_WINNT): Define to avoid redefinition warning 170 from inclusion of implement.h. 171 * convar2_1.c: Likewise. 172 * condvar3_1.c: Likewise. 173 * condvar3_2.c: Likewise. 174 * context1.c: Likewise. 175 * sizes.c: Likewise. 176 * Makefile: Don't define _WIN32_WINNT on compiler command line. 177 * GNUmakefile: Likewise. 178 * priority1.c (main): Add column to output for actual win32 179 priority. 180 1812004-05-16 Ross Johnson <rpj@callisto.canberra.edu.au> 182 183 * cancel9.c: New test. 184 * cancel3.c: Remove inappropriate conditional compilation; 185 GNU C version of test suite no longer quietly skips this test. 186 * cancel5.c: Likewise. 187 * GNUmakefile: Can now build individual test app using default 188 C version of library using 'make clean testname.c'. 189 * Makefile: Likewise for VC using 'nmake clean test testname.c'. 190 1912003-10-14 Ross Johnson <rpj@callisto.canberra.edu.au> 192 193 * Wmakefile: New makefile for Watcom testing. 194 1952003-09-18 Ross Johnson <rpj@callisto.canberra.edu.au> 196 197 * benchtest.h: Move old mutex code into benchlib.c. 198 * benchlib.c: New statically linked module to ensure that 199 bench apps don't inline the code and therefore have an unfair 200 advantage over the pthreads lib routines. Made little or no 201 difference. 202 * benchtest1.c: Minor change to avoid compiler warnings. 203 * benchtest5.c: Likewise. 204 * benchtest2.c: Fix misinformation in output report. 205 * README.BENCH: Add comments on results. 206 2072003-09-14 Ross Johnson <rpj@callisto.canberra.edu.au> 208 209 * priority1.c: Reworked to comply with modified priority 210 management and provide additional output. 211 * priority2.c: Likewise. 212 * inherit1.c: Likewise. 213 2142003-09-03 Ross Johnson <rpj@callisto.canberra.edu.au> 215 216 * exit4.c: New test. 217 * exit5.c: New test. 218 * cancel7.c: New test. 219 * cancel8.c: New test. 220 2212003-08-13 Ross Johnson <rpj@ise.canberra.edu.au> 222 223 * reuse1.c: New test. 224 * reuse1.c: New test. 225 * valid1.c: New test. 226 * valid2.c: New test. 227 * kill1.c: New test. 228 * create2.c: Now included in test regime. 229 2302003-07-19 Ross Johnson <rpj@ise.canberra.edu.au> 231 232 * eyal1.c (waste_time): Make threads do more work to ensure that 233 all threads get to do some work. 234 * semaphore1.c: Make it clear that certain errors are expected. 235 * exception2.c (non_MSVC code sections): Change to include 236 C++ standard include file, i.e. change <new.h> to <exception>. 237 * exception3.c (non_MSVC code sections): Likewise; qualify std:: 238 namespace entities where necessary. 239 * GNUmakefile: modified to work in the MsysDTK (newer MinGW) 240 environment; define CC as gcc or g++ as appropriate because 241 using gcc -x c++ doesn't link with required c++ libs by default, 242 but g++ does. 243 2442002-12-11 Ross Johnson <ross@special.ise.canberra.edu.au> 245 246 * mutex7e.c: Assert EBUSY return instead of EDEADLK. 247 2482002-06-03 Ross Johnson <rpj@digit.ise.canberra.edu.au> 249 250 * semaphore2.c: New test. 251 2522002-03-02 Ross Johnson <rpj@special.ise.canberra.edu.au> 253 254 * Makefile (CFLAGS): Changed /MT to /MD to link with 255 the correct library MSVCRT.LIB. Otherwise errno doesn't 256 work. 257 2582002-02-28 Ross Johnson <rpj@special.ise.canberra.edu.au> 259 260 * exception3.c: Correct recent change. 261 262 * semaphore1.c: New test. 263 264 * Makefile: Add rule to generate pre-processor output. 265 2662002-02-28 Ross Johnson <rpj@special.ise.canberra.edu.au> 267 268 * exception3.c (terminateFunction): For MSVC++, call 269 exit() rather than pthread_exit(). Add comments to explain 270 why. 271 * Notes from the MSVC++ manual: 272 * 1) A term_func() should call exit(), otherwise 273 * abort() will be called on return to the caller. 274 * abort() raises SIGABRT. The default signal handler 275 * for all signals terminates the calling program with 276 * exit code 3. 277 * 2) A term_func() must not throw an exception. Therefore 278 * term_func() should not call pthread_exit() if an 279 * an exception-using version of pthreads-win32 library 280 * is being used (i.e. either pthreadVCE or pthreadVSE). 281 282 2832002-02-23 Ross Johnson <rpj@special.ise.canberra.edu.au> 284 285 * rwlock2_t.c: New test. 286 * rwlock3_t.c: New test. 287 * rwlock4_t.c: New test. 288 * rwlock5_t.c: New test. 289 * rwlock6_t.c: New test. 290 * rwlock6_t2.c: New test. 291 * rwlock6.c (main): Swap thread and result variables 292 to correspond to actual thread functions. 293 * rwlock1.c: Change test description comment to correspond 294 to the actual test. 295 296 * condvar1_2.c: Loop over the test many times in the hope 297 of detecting any intermittent deadlocks. This is to 298 test a fixed problem in pthread_cond_destroy.c. 299 300 * spin4.c: Remove unused variable. 301 3022002-02-17 Ross Johnson <rpj@special.ise.canberra.edu.au> 303 304 * condvar1_1.c: New test. 305 * condvar1_2.c: New test. 306 3072002-02-07 Ross Johnson <rpj@special.ise.canberra.edu.au> 308 309 * delay1.c: New test. 310 * delay2.c: New test. 311 * exit4.c: New test. 312 3132002-02-02 Ross Johnson <rpj@special.ise.canberra.edu.au> 314 315 * mutex8: New test. 316 * mutex8n: New test. 317 * mutex8e: New test. 318 * mutex8r: New test. 319 * cancel6a: New test. 320 * cancel6d: New test. 321 * cleanup0.c: Add pragmas for inline optimisation control. 322 * cleanup1.c: Add pragmas for inline optimisation control. 323 * cleanup2.c: Add pragmas for inline optimisation control. 324 * cleanup3.c: Add pragmas for inline optimisation control. 325 * condvar7.c: Add pragmas for inline optimisation control. 326 * condvar8.c: Add pragmas for inline optimisation control. 327 * condvar9.c: Add pragmas for inline optimisation control. 328 3292002-01-30 Ross Johnson <rpj@special.ise.canberra.edu.au> 330 331 * cleanup1.c (): Must be declared __cdecl when compiled 332 as C++ AND testing the standard C library version. 333 3342002-01-16 Ross Johnson <rpj@special.ise.canberra.edu.au> 335 336 * spin4.c (main): Fix renamed function call. 337 3382002-01-14 Ross Johnson <rpj@special.ise.canberra.edu.au> 339 340 * exception3.c (main): Shorten wait time. 341 3422002-01-09 Ross Johnson <rpj@special.ise.canberra.edu.au> 343 344 * mutex7.c: New test. 345 * mutex7n.c: New test. 346 * mutex7e.c: New test. 347 * mutex7r.c: New test. 348 * mutex6.c: Modified to avoid leaving the locked mutex 349 around on exit. 350 3512001-10-25 Ross Johnson <rpj@setup1.ise.canberra.edu.au> 352 353 * condvar2.c: Remove reference to cv->nWaitersUnblocked. 354 * condvar2_1.c: Likewise; lower NUMTHREADS from 60 to 30. 355 * condvar3_1.c: Likewise. 356 * condvar3_2.c: Likewise. 357 * count1.c: lower NUMTHREADS from 60 to 30. 358 * inherit1.c: Determine valid priority values and then 359 assert values returned by POSIX routines are the same. 360 * priority1.c: Likewise. 361 * priority2.c: Likewise. 362 3632001-07-12 Ross Johnson <rpj@setup1.ise.canberra.edu.au> 364 365 * barrier5.c: Assert that precisely one thread receives 366 PTHREAD_BARRIER_SERIAL_THREAD at each barrier. 367 3682001-07-09 Ross Johnson <rpj@setup1.ise.canberra.edu.au> 369 370 * barrier3.c: Fixed. 371 * barrier4.c: Fixed. 372 * barrier5.c: New; proves that all threads in the group 373 reaching the barrier wait and then resume together. Repeats the test 374 using groups of 1 to 16 threads. Each group of threads must negotiate 375 a large number of barriers (10000). 376 * spin4.c: Fixed. 377 * test.h (error_string): Modified the success (0) value. 378 3792001-07-07 Ross Johnson <rpj@setup1.ise.canberra.edu.au> 380 381 * spin3.c: Changed test and fixed. 382 * spin4.c: Fixed. 383 * barrier3.c: Fixed. 384 * barrier4.c: Fixed. 385 3862001-07-05 Ross Johnson <rpj@special.ise.canberra.edu.au> 387 388 * spin1.c: New; testing spinlocks. 389 * spin2.c: New; testing spinlocks. 390 * spin3.c: New; testing spinlocks. 391 * spin4.c: New; testing spinlocks. 392 * barrier1.c: New; testing barriers. 393 * barrier2.c: New; testing barriers. 394 * barrier3.c: New; testing barriers. 395 * barrier4.c: New; testing barriers. 396 * GNUmakefile: Add new tests. 397 * Makefile: Add new tests. 398 3992001-07-01 Ross Johnson <rpj@special.ise.canberra.edu.au> 400 401 * benchtest3.c: New; timing mutexes. 402 * benchtest4.c: New; time mutexes. 403 * condvar3_1.c: Fixed bug - Alexander Terekhov 404 * condvar3_3.c: New test. 405 4062001-06-25 Ross Johnson <rpj@special.ise.canberra.edu.au> 407 408 * priority1.c: New test. 409 * priority2.c: New test. 410 * inherit1.c: New test. 411 * benchtest1.c: New; timing mutexes. 412 * benchtest2.c: New; timing mutexes. 413 * mutex4.c: Modified to test all mutex types. 414 4152001-06-8 Ross Johnson <rpj@special.ise.canberra.edu.au> 416 417 * mutex5.c: Insert inert change to quell compiler warnings. 418 * condvar3_2.c: Remove unused variable. 419 4202001-06-3 Ross Johnson <rpj@special.ise.canberra.edu.au> 421 422 * condvar2_1.c: New test. 423 * condvar3_1.c: New test. 424 * condvar3_2.c: New test. 425 4262001-05-30 Ross Johnson <rpj@special.ise.canberra.edu.au> 427 428 * mutex1n.c: New test. 429 * mutex1e.c: New test. 430 * mutex1r.c: New test. 431 * mutex4.c: Now locks and unlocks a mutex. 432 * mutex5.c: New test. 433 * mutex6.c: New test. 434 * mutex6n.c: New test. 435 * mutex6e.c: New test. 436 * mutex6r.c: New test. 437 * Makefile: Added new tests; reorganised. 438 * GNUmakefile: Likewise. 439 * rwlock6.c: Fix to properly prove read-while-write locking 440 and single writer locking. 441 4422001-05-29 Ross Johnson <rpj@special.ise.canberra.edu.au> 443 444 * Makefile: Reorganisation. 445 * GNUmakefile: Likewise. 446 - Thomas Pfaff <tpfaff@gmx.net> 447 448 * exception1.c: Add stdio.h include to define fprintf and stderr 449 in non-exception C version of main(). 450 * exception2.c: Likewise. 451 * exception3.c: Likewise. 452 453 * Makefile (rwlock7): Add new test. 454 * GNUmakefile (rwlock7): Add new test. 455 * rwlock7.c: New test. 456 * rwlock6.c: Changed to test that writer has priority. 457 458 * eyal1.c (main): Unlock each mutex_start lock before destroying 459 it. 460 4612000-12-29 Ross Johnson <rpj@special.ise.canberra.edu.au> 462 463 * GNUmakefile: Add mutex4 test; ensure libpthreadw32.a is 464 removed for "clean" target. 465 * Makefile: Add mutex4 test. 466 467 * exception3.c: Remove SEH code; automatically pass the test 468 under SEH (which is an N/A environment). 469 470 * mutex4.c: New test. 471 472 * eyal1.c (do_work_unit): Add a dummy "if" to force the 473 optimiser to retain code; reduce thread work loads. 474 475 * condvar8.c (main): Add an additional "assert" for debugging; 476 increase pthread_cond_signal timeout. 477 4782000-12-28 Ross Johnson <rpj@special.ise.canberra.edu.au> 479 480 * eyal1.c: Increase thread work loads. 481 * exception2.c: New test. 482 * exception3.c: New test. 483 * Makefile: Add new tests exception2.c and exception3.c. 484 * GNUmakefile: Likewise. 485 4862000-12-11 Ross Johnson <rpj@special.ise.canberra.edu.au> 487 488 * cleanup3.c: Remove unused variable. 489 * cleanup2.c: Likewise. 490 * exception1.c: Throw an exception rather than use 491 a deliberate zero divide so that catch(...) will 492 handle it under Mingw32. Mingw32 now builds the 493 library correctly to pass all tests - see Thomas 494 Pfaff's detailed instructions re needed changes 495 to Mingw32 in the Pthreads-Win32 FAQ. 496 4972000-09-08 Ross Johnson <rpj@special.ise.canberra.edu.au> 498 499 * cancel5.c: New; tests calling pthread_cancel() 500 from the main thread without first creating a 501 POSIX thread struct for the non-POSIX main thread 502 - this forces pthread_cancel() to create one via 503 pthread_self(). 504 * Makefile (cancel5): Add new test. 505 * GNUmakefile (cancel5): Likewise. 506 5072000-08-17 Ross Johnson <rpj@special.ise.canberra.edu.au> 508 509 * create2.c: New; Test that pthread_t contains 510 the W32 HANDLE before it calls the thread routine 511 proper. 512 5132000-08-13 Ross Johnson <rpj@special.ise.canberra.edu.au> 514 515 * condvar3.c: Minor change to eliminate compiler 516 warning. 517 518 * condvar4.c: ditto. 519 520 * condvar5.c: ditto. 521 522 * condvar6.c: ditto. 523 524 * condvar7.c: ditto. 525 526 * condvar8.c: ditto. 527 528 * condvar9.c: ditto. 529 530 * exit1.c: Function needed return statement. 531 532 * cleanup1.c: Remove unnecessary printf arg. 533 534 * cleanup2.c: Fix cast. 535 536 * rwlock6.c: Fix casts. 537 538 * exception1.c (PtW32CatchAll): Had the wrong name; 539 fix casts. 540 541 * cancel3.c: Remove unused waitLock variable. 542 543 * GNUmakefile: Change library/dll naming; add new tests; 544 general minor changes. 545 546 * Makefile: Change library/dll naming; add targets for 547 testing each of the two VC++ EH scheme versions; 548 default target now issues help message; compile warnings 549 now interpreted as errors to stop the make; add new 550 tests; restructure to remove prerequisites needed 551 otherwise. 552 553 * README: Updated. 554 555 5562000-08-10 Ross Johnson <rpj@special.ise.canberra.edu.au> 557 558 * eyal1.c (main): Change implicit cast to explicit 559 cast when passing "print_server" function pointer; 560 G++ no longer allows implicit func parameter casts. 561 562 * cleanup1.c: Remove unused "waitLock". 563 (main): Fix implicit parameter cast. 564 565 * cancel2.c (main): Fix implicit parameter cast. 566 567 * cancel4.c (main): Fix implicit parameter cast. 568 569 * cancel3.c (main): Fix implicit parameter cast. 570 571 * GNUmakefile: Renamed from Makefile; Add missing 572 cancel1 and cancel2 test targets. 573 574 * Makefile: Converted for use with MS nmake. 575 5762000-08-06 Ross Johnson <rpj@special.ise.canberra.edu.au> 577 578 * ccl.bat: Add /nologo to remove extraneous output. 579 580 * exception1.c (exceptionedThread): Init 'dummy'; 581 put expression into if condition to prevent optimising away; 582 remove unused variable. 583 584 * cancel4.c (mythread): Cast return value to avoid warnings. 585 586 * cancel2.c (mythread): Missing #endif. 587 588 * condvar9.c (mythread): Cast return value to avoid warnings. 589 590 * condvar8.c (mythread): Cast return value to avoid warnings. 591 592 * condvar7.c (mythread): Cast return value to avoid warnings. 593 594 * cleanup3.c (mythread): Cast return value to avoid warnings. 595 596 * cleanup2.c (mythread): Cast return value to avoid warnings. 597 598 * cleanup1.c (mythread): Cast return value to avoid warnings. 599 600 * condvar5.c (mythread): Cast return value to avoid warnings. 601 602 * condvar3.c (mythread): Cast return value to avoid warnings. 603 604 * condvar6.c (mythread): Cast return value to avoid warnings. 605 606 * condvar4.c (mythread): Cast return value to avoid warnings. 607 6082000-08-05 Ross Johnson <rpj@special.ise.canberra.edu.au> 609 610 * cancel2.c: Use PtW32CatchAll macro if defined. 611 612 * exception1.c: Use PtW32CatchAll macro if defined. 613 6142000-08-02 Ross Johnson <rpj@special.ise.canberra.edu.au> 615 616 * tsd1.c: Fix typecasts of &result [g++ is now very fussy]. 617 618 * test.h (assert): Return 0's explicitly to allay 619 g++ errors. 620 621 * join2.c: Add explicit typecasts. 622 623 * join1.c: Add explicit typecasts. 624 625 * join0.c: Add explicit typecasts. 626 627 * eyal1.c: Add explicit typecasts. 628 629 * count1.c (main): Add type cast to remove g++ parse warning 630 [gcc-2.95.2 seems to have tightened up on this]. 631 632 * Makefile (GLANG): Use c++ explicitly. 633 Remove MSVC sections (was commented out). 634 Add target to generate cpp output. 635 6362000-07-25 Ross Johnson <rpj@special.ise.canberra.edu.au> 637 638 * runtest.bat: modified to work under W98. 639 640 * runall.bat: Add new tests; modified to work under W98. 641 It was ok under NT. 642 643 * Makefile: Add new tests. 644 645 * exception1.c: New; Test passing exceptions back to the 646 application and retaining library internal exceptions. 647 648 * join0.c: New; Test a single join. 649 6502000-01-06 Ross Johnson <rpj@special.ise.canberra.edu.au> 651 652 * cleanup1.c: New; Test cleanup handler executes (when thread is 653 canceled). 654 655 * cleanup2.c: New; Test cleanup handler executes (when thread is 656 not canceled). 657 658 * cleanup3.c: New; Test cleanup handler does not execute 659 (when thread is not canceled). 660 6612000-01-04 Ross Johnson <rpj@special.ise.canberra.edu.au> 662 663 * cancel4.c: New; Test cancelation does not occur in deferred 664 cancelation threads with no cancelation points. 665 666 * cancel3.c: New; Test asynchronous cancelation. 667 668 * context1.c: New; Test context switching method for async 669 cancelation. 670 6711999-11-23 Ross Johnson <rpj@special.ise.canberra.edu.au> 672 673 * test.h: Add header includes; include local header versions rather 674 than system versions; rearrange the assert macro defines. 675 6761999-11-07 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 677 678 * loadfree.c: New. Test loading and freeing the library (DLL). 679 6801999-10-30 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 681 682 * cancel1.c: New. Test pthread_setcancelstate and 683 pthread_setcanceltype functions. 684 * eyal1.c (waste_time): Change calculation to avoid FP exception 685 on Aplhas 686 - Rich Peters <rpeters@micro-magic.com> 687 688Oct 14 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 689 690 * condvar7.c: New. Test broadcast after waiting thread is canceled. 691 * condvar8.c: New. Test multiple broadcasts. 692 * condvar9.c: New. Test multiple broadcasts with thread 693 cancelation. 694 695Sep 16 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 696 697 * rwlock6.c: New test. 698 699Sep 15 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 700 701 * rwlock1.c: New test. 702 * rwlock2.c: New test. 703 * rwlock3.c: New test. 704 * rwlock4.c: New test. 705 * rwlock5.c: New test. 706 707Aug 22 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 708 709 * runall.bat (join2): Add test. 710 711Aug 19 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 712 713 * join2.c: New test. 714 715Wed Aug 12 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 716 717 * Makefile (LIBS): Add -L. 718 719Mon May 31 10:25:01 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 720 721 * Makefile (GLANG): Add GCC language option. 722 723Sat May 29 23:29:04 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 724 725 * runall.bat (condvar5): Add new test. 726 727 * runall.bat (condvar6): Add new test. 728 729 * Makefile (condvar5) : Add new test. 730 731 * Makefile (condvar6) : Add new test. 732 733 * condvar5.c: New test for pthread_cond_broadcast(). 734 735 * condvar6.c: New test for pthread_cond_broadcast(). 736 737Sun Apr 4 12:04:28 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 738 739 * tsd1.c (mythread): Change Sleep(0) to sched_yield(). 740 (sched.h): Include. 741 742 * condvar3.c (mythread): Remove redundant Sleep(). 743 744 * runtest.bat: Re-organised to make more informative. 745 746Fri Mar 19 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 747 748 * *.bat: redirect unwanted output to nul: 749 750 * runall.bat: new. 751 752 * cancel1.c: new. Not part of suite yet. 753 754Mon Mar 15 00:17:55 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 755 756 * mutex1.c: only test mutex init and destroy; add assertions. 757 758 * count1.c: raise number of spawned threads to 60 (appears to 759 be the limit under Win98). 760 761Sun Mar 14 21:31:02 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 762 763 * test.h (assert): add assertion trace option. 764 Use: 765 "#define ASSERT_TRACE 1" to turn it on, 766 "#define ASSERT_TRACE 0" to turn it off (default). 767 768 * condvar3.c (main): add more assertions. 769 770 * condvar4.c (main): add more assertions. 771 772 * condvar1.c (main): add more assertions. 773 774Fri Mar 12 08:34:15 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 775 776 * condvar4.c (cvthing): switch the order of the INITIALIZERs. 777 778 * eyal1.c (main): Fix trylock loop; was not waiting for thread to lock 779 the "started" mutex. 780 781Wed Mar 10 10:41:52 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 782 783 * tryentercs.c: Apply typo patch from bje. 784 785 * tryentercs2.c: Ditto. 786 787Sun Mar 7 10:41:52 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 788 789 * Makefile (condvar3, condvar4): Add tests. 790 791 * condvar4.c (General): Reduce to simple test case; prerequisite 792 is condvar3.c; add description. 793 794 * condvar3.c (General): Reduce to simple test case; prerequisite 795 is condvar2.c; add description. 796 797 * condvar2.c (General): Reduce to simple test case; prerequisite 798 is condvar1.c; add description. 799 800 * condvar1.c (General): Reduce to simple test case; add 801 description. 802 803 * Template.c (Comments): Add generic test detail. 804 8051999-02-23 Ross Johnson <rpj@ise.canberra.edu.au> 806 807 * Template.c: Revamp. 808 809 * condvar1.c: Add. 810 811 * condvar2.c: Add. 812 813 * Makefile: Add condvar1 condvar2 tests. 814 815 * exit1.c, exit2.c, exit3.c: Cosmetic changes. 816 8171999-02-23 Ross Johnson <rpj@ise.canberra.edu.au> 818 819 * Makefile: Some refinement. 820 821 * *.c: More exhaustive checking through assertions; clean up; 822 add some more tests. 823 824 * Makefile: Now actually runs the tests. 825 826 * tests.h: Define our own assert macro. The Mingw32 827 version pops up a dialog but we want to run non-interactively. 828 829 * equal1.c: use assert a little more directly so that it 830 prints the actual call statement. 831 832 * exit1.c: Modify to return 0 on success, 1 on failure. 833 8341999-02-22 Ross Johnson <rpj@ise.canberra.edu.au> 835 836 * self2.c: Bring up to date. 837 838 * self3.c: Ditto. 839 8401999-02-21 Ben Elliston <bje@cygnus.com> 841 842 * README: Update. 843 844 * Makefile: New file. Run all tests automatically. Primitive tests 845 are run first; more complex tests are run last. 846 847 * count1.c: New test. Validate the thread count. 848 849 * exit2.c: Perform a simpler test. 850 851 * exit3.c: New test. Replaces exit2.c, since exit2.c needs to 852 perform simpler checking first. 853 854 * create1.c: Update to use the new testsuite exiting convention. 855 856 * equal1.c: Likewise. 857 858 * mutex1.c: Likewise. 859 860 * mutex2.c: Likewise. 861 862 * once1.c: Likewise. 863 864 * self2.c: Likewise. 865 866 * self3.c: Likewise. 867 868 * tsd1.c: Likewise. 869 8701999-02-20 Ross Johnson <rpj@ise.canberra.edu.au> 871 872 * mutex2.c: Test static mutex initialisation. 873 874 * test.h: New. Declares a table mapping error numbers to 875 error names. 876 8771999-01-17 Ross Johnson <rpj@ise.canberra.edu.au> 878 879 * runtest: New script to build and run a test in the tests directory. 880 881Wed Dec 30 11:22:44 1998 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 882 883 * tsd1.c: Re-written. See comments at start of file. 884 * Template.c: New. Contains skeleton code and comment template 885 intended to fully document the test. 886 887Fri Oct 16 17:59:49 1998 Ross Johnson <rpj@swan.canberra.edu.au> 888 889 * tsd1.c (destroy_key): Add function. Change diagnostics. 890 891Thu Oct 15 17:42:37 1998 Ross Johnson <rpj@swan.canberra.edu.au> 892 893 * tsd1.c (mythread): Fix some casts and add some message 894 output. Fix inverted conditional. 895 896Mon Oct 12 02:12:29 1998 Ross Johnson <rpj@ixobrychus.canberra.edu.au> 897 898 * tsd1.c: New. Test TSD using 1 key and 2 threads. 899 9001998-09-13 Ben Elliston <bje@cygnus.com> 901 902 * eyal1.c: New file; contributed by Eyal Lebedinsky 903 <eyal@eyal.emu.id.au>. 904 9051998-09-12 Ben Elliston <bje@cygnus.com> 906 907 * exit2.c (func): Return a value. 908 (main): Call the right thread entry function. 909 9101998-07-22 Ben Elliston <bje@cygnus.com> 911 912 * exit2.c (main): Fix size of pthread_t array. 913 9141998-07-10 Ben Elliston <bje@cygnus.com> 915 916 * exit2.c: New file; test pthread_exit() harder. 917 918 * exit1.c: New file; test pthread_exit(). 919