GCC Code Coverage Report


Directory: ./
File: numerics/predicates/orient3d.h
Date: 2026-10-17 02:49:09
Exec Total Coverage
Lines: 50 51 98.0%
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: orient3d.pck */
3
4 19906361 inline int orient_3d_filter(const double* p0, const double* p1, const double* p2, const double* p3) {
5 double a11;
6 19906361 a11 = (p1[0] - p0[0]);
7 double a12;
8 19906361 a12 = (p1[1] - p0[1]);
9 double a13;
10 19906361 a13 = (p1[2] - p0[2]);
11 double a21;
12 19906361 a21 = (p2[0] - p0[0]);
13 double a22;
14 19906361 a22 = (p2[1] - p0[1]);
15 double a23;
16 19906361 a23 = (p2[2] - p0[2]);
17 double a31;
18 19906361 a31 = (p3[0] - p0[0]);
19 double a32;
20 19906361 a32 = (p3[1] - p0[1]);
21 double a33;
22 19906361 a33 = (p3[2] - p0[2]);
23 double Delta;
24 19906361 Delta = (((a11 * ((a22 * a33) - (a23 * a32))) - (a21 * ((a12 * a33) - (a13 * a32)))) + (a31 * ((a12 * a23) - (a13 * a22))));
25 int int_tmp_result;
26 double eps;
27 19906361 double max1 = fabs(a11);
28
2/2
✓ Branch 0 taken 6781001 times.
✓ Branch 1 taken 13125360 times.
19906361 if((max1 < fabs(a21)))
29 {
30 6781001 max1 = fabs(a21);
31 }
32
2/2
✓ Branch 0 taken 5428665 times.
✓ Branch 1 taken 14477696 times.
19906361 if((max1 < fabs(a31)))
33 {
34 5428665 max1 = fabs(a31);
35 }
36 19906361 double max2 = fabs(a12);
37
2/2
✓ Branch 0 taken 8128883 times.
✓ Branch 1 taken 11777478 times.
19906361 if((max2 < fabs(a13)))
38 {
39 8128883 max2 = fabs(a13);
40 }
41
2/2
✓ Branch 0 taken 4486776 times.
✓ Branch 1 taken 15419585 times.
19906361 if((max2 < fabs(a22)))
42 {
43 4486776 max2 = fabs(a22);
44 }
45
2/2
✓ Branch 0 taken 2752322 times.
✓ Branch 1 taken 17154039 times.
19906361 if((max2 < fabs(a23)))
46 {
47 2752322 max2 = fabs(a23);
48 }
49 19906361 double max3 = fabs(a22);
50
2/2
✓ Branch 0 taken 7947928 times.
✓ Branch 1 taken 11958433 times.
19906361 if((max3 < fabs(a23)))
51 {
52 7947928 max3 = fabs(a23);
53 }
54
2/2
✓ Branch 0 taken 6295845 times.
✓ Branch 1 taken 13610516 times.
19906361 if((max3 < fabs(a32)))
55 {
56 6295845 max3 = fabs(a32);
57 }
58
2/2
✓ Branch 0 taken 3766324 times.
✓ Branch 1 taken 16140037 times.
19906361 if((max3 < fabs(a33)))
59 {
60 3766324 max3 = fabs(a33);
61 }
62 double lower_bound_1;
63 double upper_bound_1;
64 19906361 lower_bound_1 = max1;
65 19906361 upper_bound_1 = max1;
66
2/2
✓ Branch 0 taken 6279917 times.
✓ Branch 1 taken 13626444 times.
19906361 if((max2 < lower_bound_1))
67 {
68 6279917 lower_bound_1 = max2;
69 }
70 else
71 {
72
2/2
✓ Branch 0 taken 11795333 times.
✓ Branch 1 taken 1831111 times.
13626444 if((max2 > upper_bound_1))
73 {
74 11795333 upper_bound_1 = max2;
75 }
76 }
77
2/2
✓ Branch 0 taken 3804633 times.
✓ Branch 1 taken 16101728 times.
19906361 if((max3 < lower_bound_1))
78 {
79 3804633 lower_bound_1 = max3;
80 }
81 else
82 {
83
2/2
✓ Branch 0 taken 3875293 times.
✓ Branch 1 taken 12226435 times.
16101728 if((max3 > upper_bound_1))
84 {
85 3875293 upper_bound_1 = max3;
86 }
87 }
88
2/2
✓ Branch 0 taken 419790 times.
✓ Branch 1 taken 19486571 times.
19906361 if((lower_bound_1 < 1.63288018496748314939e-98))
89 {
90 419790 return FPG_UNCERTAIN_VALUE;
91 }
92 else
93 {
94
1/2
✗ Branch 0 not taken.
✓ Branch 1 taken 19486571 times.
19486571 if((upper_bound_1 > 5.59936185544450928309e+101))
95 {
96 ✗ return FPG_UNCERTAIN_VALUE;
97 }
98 19486571 eps = (5.11071278299732992696e-15 * ((max2 * max3) * max1));
99
2/2
✓ Branch 0 taken 6444385 times.
✓ Branch 1 taken 13042186 times.
19486571 if((Delta > eps))
100 {
101 6444385 int_tmp_result = 1;
102 }
103 else
104 {
105
2/2
✓ Branch 0 taken 8391248 times.
✓ Branch 1 taken 4650938 times.
13042186 if((Delta < -eps))
106 {
107 8391248 int_tmp_result = -1;
108 }
109 else
110 {
111 4650938 return FPG_UNCERTAIN_VALUE;
112 }
113 }
114 }
115 14835633 return int_tmp_result;
116 }
117