GCC Code Coverage Report


Directory: ./
File: numerics/predicates/det3d.h
Date: 2026-09-27 03:22:43
Exec Total Coverage
Lines: 41 42 97.6%
Functions: 1 1 100.0%
Branches: 31 32 96.9%

Line Branch Exec Source
1 /* Automatically generated code, do not edit */
2 /* Generated from source file: det3d.pck */
3
4 147292 inline int det_3d_filter( const double* p0, const double* p1, const double* p2) {
5 double Delta;
6 147292 Delta = (((p0[0] * ((p1[1] * p2[2]) - (p1[2] * p2[1]))) - (p1[0] * ((p0[1] * p2[2]) - (p0[2] * p2[1])))) + (p2[0] * ((p0[1] * p1[2]) - (p0[2] * p1[1]))));
7 int int_tmp_result;
8 double eps;
9 147292 double max1 = fabs(p0[0]);
10
2/2
✓ Branch 0 taken 29150 times.
✓ Branch 1 taken 118142 times.
147292 if( (max1 < fabs(p1[0])) )
11 {
12 29150 max1 = fabs(p1[0]);
13 }
14
2/2
✓ Branch 0 taken 24800 times.
✓ Branch 1 taken 122492 times.
147292 if( (max1 < fabs(p2[0])) )
15 {
16 24800 max1 = fabs(p2[0]);
17 }
18 147292 double max2 = fabs(p0[1]);
19
2/2
✓ Branch 0 taken 65300 times.
✓ Branch 1 taken 81992 times.
147292 if( (max2 < fabs(p0[2])) )
20 {
21 65300 max2 = fabs(p0[2]);
22 }
23
2/2
✓ Branch 0 taken 17350 times.
✓ Branch 1 taken 129942 times.
147292 if( (max2 < fabs(p1[1])) )
24 {
25 17350 max2 = fabs(p1[1]);
26 }
27
2/2
✓ Branch 0 taken 6418 times.
✓ Branch 1 taken 140874 times.
147292 if( (max2 < fabs(p1[2])) )
28 {
29 6418 max2 = fabs(p1[2]);
30 }
31 147292 double max3 = fabs(p1[1]);
32
2/2
✓ Branch 0 taken 65348 times.
✓ Branch 1 taken 81944 times.
147292 if( (max3 < fabs(p1[2])) )
33 {
34 65348 max3 = fabs(p1[2]);
35 }
36
2/2
✓ Branch 0 taken 25546 times.
✓ Branch 1 taken 121746 times.
147292 if( (max3 < fabs(p2[1])) )
37 {
38 25546 max3 = fabs(p2[1]);
39 }
40
2/2
✓ Branch 0 taken 11130 times.
✓ Branch 1 taken 136162 times.
147292 if( (max3 < fabs(p2[2])) )
41 {
42 11130 max3 = fabs(p2[2]);
43 }
44 double lower_bound_1;
45 double upper_bound_1;
46 147292 lower_bound_1 = max1;
47 147292 upper_bound_1 = max1;
48
2/2
✓ Branch 0 taken 60742 times.
✓ Branch 1 taken 86550 times.
147292 if( (max2 < lower_bound_1) )
49 {
50 60742 lower_bound_1 = max2;
51 }
52 else
53 {
54
2/2
✓ Branch 0 taken 76724 times.
✓ Branch 1 taken 9826 times.
86550 if( (max2 > upper_bound_1) )
55 {
56 76724 upper_bound_1 = max2;
57 }
58 }
59
2/2
✓ Branch 0 taken 7024 times.
✓ Branch 1 taken 140268 times.
147292 if( (max3 < lower_bound_1) )
60 {
61 7024 lower_bound_1 = max3;
62 }
63 else
64 {
65
2/2
✓ Branch 0 taken 10344 times.
✓ Branch 1 taken 129924 times.
140268 if( (max3 > upper_bound_1) )
66 {
67 10344 upper_bound_1 = max3;
68 }
69 }
70
2/2
✓ Branch 0 taken 1278 times.
✓ Branch 1 taken 146014 times.
147292 if( (lower_bound_1 < 1.92663387981871579179e-98) )
71 {
72 1278 return FPG_UNCERTAIN_VALUE;
73 }
74 else
75 {
76
1/2
✗ Branch 0 not taken.
✓ Branch 1 taken 146014 times.
146014 if( (upper_bound_1 > 1.11987237108890185662e+102) )
77 {
78 ✗ return FPG_UNCERTAIN_VALUE;
79 }
80 146014 eps = (3.11133555671680765034e-15 * ((max2 * max3) * max1));
81
2/2
✓ Branch 0 taken 388 times.
✓ Branch 1 taken 145626 times.
146014 if( (Delta > eps) )
82 {
83 388 int_tmp_result = 1;
84 }
85 else
86 {
87
2/2
✓ Branch 0 taken 388 times.
✓ Branch 1 taken 145238 times.
145626 if( (Delta < -eps) )
88 {
89 388 int_tmp_result = -1;
90 }
91 else
92 {
93 145238 return FPG_UNCERTAIN_VALUE;
94 }
95 }
96 }
97 776 return int_tmp_result;
98 }
99