diff --git a/Packages/Interval_arithmetic/test/Interval_arithmetic/Makefile b/Packages/Interval_arithmetic/test/Interval_arithmetic/Makefile index 2dc2b9cc142..60a763c6d0f 100644 --- a/Packages/Interval_arithmetic/test/Interval_arithmetic/Makefile +++ b/Packages/Interval_arithmetic/test/Interval_arithmetic/Makefile @@ -15,7 +15,6 @@ include $(CGAL_MAKEFILE) CXXFLAGS = \ -I../../include \ - -I../../../Number_types/include \ $(TESTSUITE_CXXFLAGS) \ $(EXTRA_FLAGS) \ $(CGAL_CXXFLAGS) \ @@ -40,26 +39,30 @@ LDFLAGS = \ #---------------------------------------------------------------------# all: \ + bench_IA$(EXE_EXT) \ Filtered_kernel$(EXE_EXT) \ gcc_3.0_bug$(EXE_EXT) \ + Interval_nt$(EXE_EXT) \ Lazy_exact_nt$(EXE_EXT) \ Static_filters$(EXE_EXT) \ to_interval_test$(EXE_EXT) \ tst0$(EXE_EXT) \ tst10$(EXE_EXT) \ - tst1$(EXE_EXT) \ - tst2$(EXE_EXT) \ - tst3$(EXE_EXT) \ - tst4$(EXE_EXT) \ tst5$(EXE_EXT) \ tst6$(EXE_EXT) +bench_IA$(EXE_EXT): bench_IA$(OBJ_EXT) + $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)bench_IA bench_IA$(OBJ_EXT) $(LDFLAGS) + Filtered_kernel$(EXE_EXT): Filtered_kernel$(OBJ_EXT) $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)Filtered_kernel Filtered_kernel$(OBJ_EXT) $(LDFLAGS) gcc_3.0_bug$(EXE_EXT): gcc_3.0_bug$(OBJ_EXT) $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)gcc_3.0_bug gcc_3.0_bug$(OBJ_EXT) $(LDFLAGS) +Interval_nt$(EXE_EXT): Interval_nt$(OBJ_EXT) + $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)Interval_nt Interval_nt$(OBJ_EXT) $(LDFLAGS) + Lazy_exact_nt$(EXE_EXT): Lazy_exact_nt$(OBJ_EXT) $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)Lazy_exact_nt Lazy_exact_nt$(OBJ_EXT) $(LDFLAGS) @@ -75,18 +78,6 @@ tst0$(EXE_EXT): tst0$(OBJ_EXT) tst10$(EXE_EXT): tst10$(OBJ_EXT) $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)tst10 tst10$(OBJ_EXT) $(LDFLAGS) -tst1$(EXE_EXT): tst1$(OBJ_EXT) - $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)tst1 tst1$(OBJ_EXT) $(LDFLAGS) - -tst2$(EXE_EXT): tst2$(OBJ_EXT) - $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)tst2 tst2$(OBJ_EXT) $(LDFLAGS) - -tst3$(EXE_EXT): tst3$(OBJ_EXT) - $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)tst3 tst3$(OBJ_EXT) $(LDFLAGS) - -tst4$(EXE_EXT): tst4$(OBJ_EXT) - $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)tst4 tst4$(OBJ_EXT) $(LDFLAGS) - tst5$(EXE_EXT): tst5$(OBJ_EXT) $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)tst5 tst5$(OBJ_EXT) $(LDFLAGS) @@ -94,17 +85,15 @@ tst6$(EXE_EXT): tst6$(OBJ_EXT) $(CGAL_CXX) $(LIBPATH) $(EXE_OPT)tst6 tst6$(OBJ_EXT) $(LDFLAGS) clean: \ + bench_IA.clean \ Filtered_kernel.clean \ gcc_3.0_bug.clean \ + Interval_nt.clean \ Lazy_exact_nt.clean \ Static_filters.clean \ to_interval_test.clean \ tst0.clean \ tst10.clean \ - tst1.clean \ - tst2.clean \ - tst3.clean \ - tst4.clean \ tst5.clean \ tst6.clean diff --git a/Packages/Interval_arithmetic/test/Interval_arithmetic/include/bench_generic.C b/Packages/Interval_arithmetic/test/Interval_arithmetic/bench_IA.C similarity index 84% rename from Packages/Interval_arithmetic/test/Interval_arithmetic/include/bench_generic.C rename to Packages/Interval_arithmetic/test/Interval_arithmetic/bench_IA.C index a39338051ec..6bd4ffab7d5 100644 --- a/Packages/Interval_arithmetic/test/Interval_arithmetic/include/bench_generic.C +++ b/Packages/Interval_arithmetic/test/Interval_arithmetic/bench_IA.C @@ -1,9 +1,5 @@ // Generic bench file for the IA package. -// Sylvain Pion, 1997-2000. - -// This file is included from tst[34].C, that do just a #define: -// #define TESTED_TYPE Interval_nt_advanced // For tst3.C -// #define TESTED_TYPE Interval_nt // For tst4.C +// Sylvain Pion, 1997-2005. #include #include @@ -12,8 +8,6 @@ #include -typedef TESTED_TYPE IA_nt; - #ifndef LOOPS # define LOOPS 1000 #endif @@ -22,6 +16,7 @@ const int loops = LOOPS; // Some simple operators benchmarks. +template < typename IA_nt > void bench() { int i; @@ -80,6 +75,7 @@ void bench() // OrientationC2() benchmark. +template < typename IA_nt > void bench_orientation() { IA_nt a(0.12); @@ -100,30 +96,29 @@ void bench_orientation() } -int main() +template < typename IA_nt > +void bench_main() { -#ifdef ADVANCED - CGAL::FPU_CW_t backup = CGAL::FPU_get_cw(); - CGAL::FPU_set_cw(CGAL_FE_UPWARD); - std::cout << "Benching the class Interval_nt_advanced.\n"; -#else - std::cout << "Benching the class Interval_nt.\n"; -#endif + typename IA_nt::Protector p; + double d; if ((((long) &d) & 7) != 0) std::cout << "Benchmark might not be meaningful due to bad alignment\n"; std::cout.precision(20); - bench(); - bench_orientation(); + bench(); + bench_orientation(); IA_nt a=1, b=2; (void) CGAL_NTS sign(a); (void) CGAL_NTS compare(a,b); +} -#ifdef ADVANCED - CGAL::FPU_set_cw(backup); -#endif - +int main() +{ + std::cout << "Benching the class Interval_nt.\n"; + bench_main >(); + std::cout << "\nBenching the class Interval_nt_advanced.\n"; + bench_main(); return 0; } diff --git a/Packages/Interval_arithmetic/test/Interval_arithmetic/tst3.C b/Packages/Interval_arithmetic/test/Interval_arithmetic/tst3.C deleted file mode 100644 index a0066f6e632..00000000000 --- a/Packages/Interval_arithmetic/test/Interval_arithmetic/tst3.C +++ /dev/null @@ -1,7 +0,0 @@ -// Bench file #3 for the IA package. -// $Revision$ -// $Date$ - -#define NOT_ADVANCED -#define TESTED_TYPE CGAL::Interval_nt<> -#include "include/bench_generic.C" diff --git a/Packages/Interval_arithmetic/test/Interval_arithmetic/tst4.C b/Packages/Interval_arithmetic/test/Interval_arithmetic/tst4.C deleted file mode 100644 index 299a1e26ba3..00000000000 --- a/Packages/Interval_arithmetic/test/Interval_arithmetic/tst4.C +++ /dev/null @@ -1,7 +0,0 @@ -// Bench file #4 for the IA package. -// $Revision$ -// $Date$ - -#define ADVANCED -#define TESTED_TYPE CGAL::Interval_nt_advanced -#include "include/bench_generic.C"