mirror of https://github.com/CGAL/cgal
- Use templates instead of macros.
This commit is contained in:
parent
b0230a4b6b
commit
9da9e8d3dd
|
|
@ -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
|
||||
|
||||
|
|
|
|||
|
|
@ -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 <CGAL/basic.h>
|
||||
#include <CGAL/Timer.h>
|
||||
|
|
@ -12,8 +8,6 @@
|
|||
|
||||
#include <cassert>
|
||||
|
||||
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<IA_nt>();
|
||||
bench_orientation<IA_nt>();
|
||||
|
||||
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<CGAL::Interval_nt<> >();
|
||||
std::cout << "\nBenching the class Interval_nt_advanced.\n";
|
||||
bench_main<CGAL::Interval_nt_advanced>();
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -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"
|
||||
|
|
@ -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"
|
||||
Loading…
Reference in New Issue