; LLVM IR from SciCompMod/GMGPolar :: src/InputFunctions/SourceTerms (cartesianR6_ZoniGyro_CircularGeometry)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%class.CartesianR6_ZoniGyro_CircularGeometry = type { %class.SourceTerm, double }
%class.SourceTerm = type { ptr }

; Function Attrs: mustprogress nounwind uwtable
define dso_local noundef double @_ZNK37CartesianR6_ZoniGyro_CircularGeometry5rhs_fERKdS1_S1_S1_(ptr noundef nonnull align 8 dereferenceable(16) %0, ptr noundef nonnull align 8 dereferenceable(8) %1, ptr noundef nonnull align 8 dereferenceable(8) %2, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull align 8 dereferenceable(8) %4) unnamed_addr #0 align 2 {
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca ptr, align 8
  %9 = alloca ptr, align 8
  %10 = alloca ptr, align 8
  store ptr %0, ptr %6, align 8, !tbaa !5
  store ptr %1, ptr %7, align 8, !tbaa !5
  store ptr %2, ptr %8, align 8, !tbaa !5
  store ptr %3, ptr %9, align 8, !tbaa !5
  store ptr %4, ptr %10, align 8, !tbaa !5
  %11 = load ptr, ptr %6, align 8
  %12 = load ptr, ptr %7, align 8, !tbaa !5
  %13 = load double, ptr %12, align 8, !tbaa !9
  %14 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %15 = load double, ptr %14, align 8, !tbaa !11
  %16 = fdiv double %13, %15
  %17 = fsub double %16, 1.000000e+00
  %18 = call double @pow(double noundef %17, double noundef 6.000000e+00) #3
  %19 = fmul double 4.096000e-01, %18
  %20 = load ptr, ptr %7, align 8, !tbaa !5
  %21 = load double, ptr %20, align 8, !tbaa !9
  %22 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %23 = load double, ptr %22, align 8, !tbaa !11
  %24 = fdiv double %21, %23
  %25 = fadd double %24, 1.000000e+00
  %26 = call double @pow(double noundef %25, double noundef 6.000000e+00) #3
  %27 = fmul double %19, %26
  %28 = load ptr, ptr %7, align 8, !tbaa !5
  %29 = load double, ptr %28, align 8, !tbaa !9
  %30 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %31 = load double, ptr %30, align 8, !tbaa !11
  %32 = fdiv double %29, %31
  %33 = call double @llvm.fmuladd.f64(double 1.000000e+01, double %32, double -5.000000e+00)
  %34 = call double @tanh(double noundef %33) #3
  %35 = call double @exp(double noundef %34) #3
  %36 = fmul double %27, %35
  %37 = load ptr, ptr %7, align 8, !tbaa !5
  %38 = load double, ptr %37, align 8, !tbaa !9
  %39 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %40 = load double, ptr %39, align 8, !tbaa !11
  %41 = fdiv double %38, %40
  %42 = fmul double 0x401921FB54442D18, %41
  %43 = load ptr, ptr %9, align 8, !tbaa !5
  %44 = load double, ptr %43, align 8, !tbaa !9
  %45 = fmul double %42, %44
  %46 = call double @sin(double noundef %45) #3
  %47 = fmul double %36, %46
  %48 = load ptr, ptr %7, align 8, !tbaa !5
  %49 = load double, ptr %48, align 8, !tbaa !9
  %50 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %51 = load double, ptr %50, align 8, !tbaa !11
  %52 = fdiv double %49, %51
  %53 = fmul double 0x401921FB54442D18, %52
  %54 = load ptr, ptr %10, align 8, !tbaa !5
  %55 = load double, ptr %54, align 8, !tbaa !9
  %56 = fmul double %53, %55
  %57 = call double @cos(double noundef %56) #3
  %58 = load ptr, ptr %7, align 8, !tbaa !5
  %59 = load double, ptr %58, align 8, !tbaa !9
  %60 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %61 = load double, ptr %60, align 8, !tbaa !11
  %62 = fdiv double %59, %61
  %63 = load ptr, ptr %7, align 8, !tbaa !5
  %64 = load double, ptr %63, align 8, !tbaa !9
  %65 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %66 = load double, ptr %65, align 8, !tbaa !11
  %67 = fdiv double %64, %66
  %68 = call double @llvm.fmuladd.f64(double 1.000000e+01, double %67, double -5.000000e+00)
  %69 = call double @tanh(double noundef %68) #3
  %70 = call double @pow(double noundef %69, double noundef 2.000000e+00) #3
  %71 = call double @llvm.fmuladd.f64(double 1.000000e+01, double %70, double -1.000000e+01)
  %72 = fmul double %62, %71
  %73 = load ptr, ptr %7, align 8, !tbaa !5
  %74 = load double, ptr %73, align 8, !tbaa !9
  %75 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %76 = load double, ptr %75, align 8, !tbaa !11
  %77 = fdiv double %74, %76
  %78 = fsub double %77, 1.000000e+00
  %79 = call double @pow(double noundef %78, double noundef 6.000000e+00) #3
  %80 = fmul double 0x400496B7C53C5B02, %79
  %81 = load ptr, ptr %7, align 8, !tbaa !5
  %82 = load double, ptr %81, align 8, !tbaa !9
  %83 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %84 = load double, ptr %83, align 8, !tbaa !11
  %85 = fdiv double %82, %84
  %86 = fadd double %85, 1.000000e+00
  %87 = call double @pow(double noundef %86, double noundef 6.000000e+00) #3
  %88 = fmul double %80, %87
  %89 = load ptr, ptr %9, align 8, !tbaa !5
  %90 = load double, ptr %89, align 8, !tbaa !9
  %91 = fmul double %88, %90
  %92 = load ptr, ptr %7, align 8, !tbaa !5
  %93 = load double, ptr %92, align 8, !tbaa !9
  %94 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %95 = load double, ptr %94, align 8, !tbaa !11
  %96 = fdiv double %93, %95
  %97 = fmul double 0x401921FB54442D18, %96
  %98 = load ptr, ptr %9, align 8, !tbaa !5
  %99 = load double, ptr %98, align 8, !tbaa !9
  %100 = fmul double %97, %99
  %101 = call double @cos(double noundef %100) #3
  %102 = fmul double %91, %101
  %103 = load ptr, ptr %7, align 8, !tbaa !5
  %104 = load double, ptr %103, align 8, !tbaa !9
  %105 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %106 = load double, ptr %105, align 8, !tbaa !11
  %107 = fdiv double %104, %106
  %108 = fmul double 0x401921FB54442D18, %107
  %109 = load ptr, ptr %10, align 8, !tbaa !5
  %110 = load double, ptr %109, align 8, !tbaa !9
  %111 = fmul double %108, %110
  %112 = call double @cos(double noundef %111) #3
  %113 = load ptr, ptr %7, align 8, !tbaa !5
  %114 = load double, ptr %113, align 8, !tbaa !9
  %115 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %116 = load double, ptr %115, align 8, !tbaa !11
  %117 = fdiv double %114, %116
  %118 = fsub double %117, 1.000000e+00
  %119 = call double @pow(double noundef %118, double noundef 6.000000e+00) #3
  %120 = fmul double 0x400496B7C53C5B02, %119
  %121 = load ptr, ptr %7, align 8, !tbaa !5
  %122 = load double, ptr %121, align 8, !tbaa !9
  %123 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %124 = load double, ptr %123, align 8, !tbaa !11
  %125 = fdiv double %122, %124
  %126 = fadd double %125, 1.000000e+00
  %127 = call double @pow(double noundef %126, double noundef 6.000000e+00) #3
  %128 = fmul double %120, %127
  %129 = load ptr, ptr %7, align 8, !tbaa !5
  %130 = load double, ptr %129, align 8, !tbaa !9
  %131 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %132 = load double, ptr %131, align 8, !tbaa !11
  %133 = fdiv double %130, %132
  %134 = fmul double 0x401921FB54442D18, %133
  %135 = load ptr, ptr %9, align 8, !tbaa !5
  %136 = load double, ptr %135, align 8, !tbaa !9
  %137 = fmul double %134, %136
  %138 = call double @sin(double noundef %137) #3
  %139 = fmul double %128, %138
  %140 = load ptr, ptr %7, align 8, !tbaa !5
  %141 = load double, ptr %140, align 8, !tbaa !9
  %142 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %143 = load double, ptr %142, align 8, !tbaa !11
  %144 = fdiv double %141, %143
  %145 = fmul double 0x401921FB54442D18, %144
  %146 = load ptr, ptr %10, align 8, !tbaa !5
  %147 = load double, ptr %146, align 8, !tbaa !9
  %148 = fmul double %145, %147
  %149 = call double @sin(double noundef %148) #3
  %150 = fmul double %139, %149
  %151 = load ptr, ptr %10, align 8, !tbaa !5
  %152 = load double, ptr %151, align 8, !tbaa !9
  %153 = fmul double %150, %152
  %154 = fneg double %153
  %155 = call double @llvm.fmuladd.f64(double %102, double %112, double %154)
  %156 = load ptr, ptr %7, align 8, !tbaa !5
  %157 = load double, ptr %156, align 8, !tbaa !9
  %158 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %159 = load double, ptr %158, align 8, !tbaa !11
  %160 = fdiv double %157, %159
  %161 = fsub double %160, 1.000000e+00
  %162 = call double @pow(double noundef %161, double noundef 6.000000e+00) #3
  %163 = fmul double 2.457600e+00, %162
  %164 = load ptr, ptr %7, align 8, !tbaa !5
  %165 = load double, ptr %164, align 8, !tbaa !9
  %166 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %167 = load double, ptr %166, align 8, !tbaa !11
  %168 = fdiv double %165, %167
  %169 = fadd double %168, 1.000000e+00
  %170 = call double @pow(double noundef %169, double noundef 5.000000e+00) #3
  %171 = fmul double %163, %170
  %172 = load ptr, ptr %7, align 8, !tbaa !5
  %173 = load double, ptr %172, align 8, !tbaa !9
  %174 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %175 = load double, ptr %174, align 8, !tbaa !11
  %176 = fdiv double %173, %175
  %177 = fmul double 0x401921FB54442D18, %176
  %178 = load ptr, ptr %9, align 8, !tbaa !5
  %179 = load double, ptr %178, align 8, !tbaa !9
  %180 = fmul double %177, %179
  %181 = call double @sin(double noundef %180) #3
  %182 = fmul double %171, %181
  %183 = load ptr, ptr %7, align 8, !tbaa !5
  %184 = load double, ptr %183, align 8, !tbaa !9
  %185 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %186 = load double, ptr %185, align 8, !tbaa !11
  %187 = fdiv double %184, %186
  %188 = fmul double 0x401921FB54442D18, %187
  %189 = load ptr, ptr %10, align 8, !tbaa !5
  %190 = load double, ptr %189, align 8, !tbaa !9
  %191 = fmul double %188, %190
  %192 = call double @cos(double noundef %191) #3
  %193 = call double @llvm.fmuladd.f64(double %182, double %192, double %155)
  %194 = load ptr, ptr %7, align 8, !tbaa !5
  %195 = load double, ptr %194, align 8, !tbaa !9
  %196 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %197 = load double, ptr %196, align 8, !tbaa !11
  %198 = fdiv double %195, %197
  %199 = fsub double %198, 1.000000e+00
  %200 = call double @pow(double noundef %199, double noundef 5.000000e+00) #3
  %201 = fmul double 2.457600e+00, %200
  %202 = load ptr, ptr %7, align 8, !tbaa !5
  %203 = load double, ptr %202, align 8, !tbaa !9
  %204 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %205 = load double, ptr %204, align 8, !tbaa !11
  %206 = fdiv double %203, %205
  %207 = fadd double %206, 1.000000e+00
  %208 = call double @pow(double noundef %207, double noundef 6.000000e+00) #3
  %209 = fmul double %201, %208
  %210 = load ptr, ptr %7, align 8, !tbaa !5
  %211 = load double, ptr %210, align 8, !tbaa !9
  %212 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %213 = load double, ptr %212, align 8, !tbaa !11
  %214 = fdiv double %211, %213
  %215 = fmul double 0x401921FB54442D18, %214
  %216 = load ptr, ptr %9, align 8, !tbaa !5
  %217 = load double, ptr %216, align 8, !tbaa !9
  %218 = fmul double %215, %217
  %219 = call double @sin(double noundef %218) #3
  %220 = fmul double %209, %219
  %221 = load ptr, ptr %7, align 8, !tbaa !5
  %222 = load double, ptr %221, align 8, !tbaa !9
  %223 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %224 = load double, ptr %223, align 8, !tbaa !11
  %225 = fdiv double %222, %224
  %226 = fmul double 0x401921FB54442D18, %225
  %227 = load ptr, ptr %10, align 8, !tbaa !5
  %228 = load double, ptr %227, align 8, !tbaa !9
  %229 = fmul double %226, %228
  %230 = call double @cos(double noundef %229) #3
  %231 = call double @llvm.fmuladd.f64(double %220, double %230, double %193)
  %232 = fmul double %72, %231
  %233 = load ptr, ptr %7, align 8, !tbaa !5
  %234 = load double, ptr %233, align 8, !tbaa !9
  %235 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %236 = load double, ptr %235, align 8, !tbaa !11
  %237 = fdiv double %234, %236
  %238 = call double @llvm.fmuladd.f64(double 1.000000e+01, double %237, double -5.000000e+00)
  %239 = call double @tanh(double noundef %238) #3
  %240 = fneg double %239
  %241 = call double @exp(double noundef %240) #3
  %242 = load ptr, ptr %7, align 8, !tbaa !5
  %243 = load double, ptr %242, align 8, !tbaa !9
  %244 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %245 = load double, ptr %244, align 8, !tbaa !11
  %246 = fdiv double %243, %245
  %247 = load ptr, ptr %7, align 8, !tbaa !5
  %248 = load double, ptr %247, align 8, !tbaa !9
  %249 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %250 = load double, ptr %249, align 8, !tbaa !11
  %251 = fdiv double %248, %250
  %252 = fsub double %251, 1.000000e+00
  %253 = call double @pow(double noundef %252, double noundef 6.000000e+00) #3
  %254 = fmul double 0xC0302B9CB4038019, %253
  %255 = load ptr, ptr %7, align 8, !tbaa !5
  %256 = load double, ptr %255, align 8, !tbaa !9
  %257 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %258 = load double, ptr %257, align 8, !tbaa !11
  %259 = fdiv double %256, %258
  %260 = fadd double %259, 1.000000e+00
  %261 = call double @pow(double noundef %260, double noundef 6.000000e+00) #3
  %262 = fmul double %254, %261
  %263 = load ptr, ptr %9, align 8, !tbaa !5
  %264 = load double, ptr %263, align 8, !tbaa !9
  %265 = call double @pow(double noundef %264, double noundef 2.000000e+00) #3
  %266 = fmul double %262, %265
  %267 = load ptr, ptr %7, align 8, !tbaa !5
  %268 = load double, ptr %267, align 8, !tbaa !9
  %269 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %270 = load double, ptr %269, align 8, !tbaa !11
  %271 = fdiv double %268, %270
  %272 = fmul double 0x401921FB54442D18, %271
  %273 = load ptr, ptr %9, align 8, !tbaa !5
  %274 = load double, ptr %273, align 8, !tbaa !9
  %275 = fmul double %272, %274
  %276 = call double @sin(double noundef %275) #3
  %277 = fmul double %266, %276
  %278 = load ptr, ptr %7, align 8, !tbaa !5
  %279 = load double, ptr %278, align 8, !tbaa !9
  %280 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %281 = load double, ptr %280, align 8, !tbaa !11
  %282 = fdiv double %279, %281
  %283 = fmul double 0x401921FB54442D18, %282
  %284 = load ptr, ptr %10, align 8, !tbaa !5
  %285 = load double, ptr %284, align 8, !tbaa !9
  %286 = fmul double %283, %285
  %287 = call double @cos(double noundef %286) #3
  %288 = load ptr, ptr %7, align 8, !tbaa !5
  %289 = load double, ptr %288, align 8, !tbaa !9
  %290 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %291 = load double, ptr %290, align 8, !tbaa !11
  %292 = fdiv double %289, %291
  %293 = fsub double %292, 1.000000e+00
  %294 = call double @pow(double noundef %293, double noundef 6.000000e+00) #3
  %295 = fmul double 0x40402B9CB4038019, %294
  %296 = load ptr, ptr %7, align 8, !tbaa !5
  %297 = load double, ptr %296, align 8, !tbaa !9
  %298 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %299 = load double, ptr %298, align 8, !tbaa !11
  %300 = fdiv double %297, %299
  %301 = fadd double %300, 1.000000e+00
  %302 = call double @pow(double noundef %301, double noundef 6.000000e+00) #3
  %303 = fmul double %295, %302
  %304 = load ptr, ptr %9, align 8, !tbaa !5
  %305 = load double, ptr %304, align 8, !tbaa !9
  %306 = fmul double %303, %305
  %307 = load ptr, ptr %7, align 8, !tbaa !5
  %308 = load double, ptr %307, align 8, !tbaa !9
  %309 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %310 = load double, ptr %309, align 8, !tbaa !11
  %311 = fdiv double %308, %310
  %312 = fmul double 0x401921FB54442D18, %311
  %313 = load ptr, ptr %10, align 8, !tbaa !5
  %314 = load double, ptr %313, align 8, !tbaa !9
  %315 = fmul double %312, %314
  %316 = call double @sin(double noundef %315) #3
  %317 = fmul double %306, %316
  %318 = load ptr, ptr %10, align 8, !tbaa !5
  %319 = load double, ptr %318, align 8, !tbaa !9
  %320 = fmul double %317, %319
  %321 = load ptr, ptr %7, align 8, !tbaa !5
  %322 = load double, ptr %321, align 8, !tbaa !9
  %323 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %324 = load double, ptr %323, align 8, !tbaa !11
  %325 = fdiv double %322, %324
  %326 = fmul double 0x401921FB54442D18, %325
  %327 = load ptr, ptr %9, align 8, !tbaa !5
  %328 = load double, ptr %327, align 8, !tbaa !9
  %329 = fmul double %326, %328
  %330 = call double @cos(double noundef %329) #3
  %331 = fmul double %320, %330
  %332 = fneg double %331
  %333 = call double @llvm.fmuladd.f64(double %277, double %287, double %332)
  %334 = load ptr, ptr %7, align 8, !tbaa !5
  %335 = load double, ptr %334, align 8, !tbaa !9
  %336 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %337 = load double, ptr %336, align 8, !tbaa !11
  %338 = fdiv double %335, %337
  %339 = fsub double %338, 1.000000e+00
  %340 = call double @pow(double noundef %339, double noundef 6.000000e+00) #3
  %341 = fmul double 0x40302B9CB4038019, %340
  %342 = load ptr, ptr %7, align 8, !tbaa !5
  %343 = load double, ptr %342, align 8, !tbaa !9
  %344 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %345 = load double, ptr %344, align 8, !tbaa !11
  %346 = fdiv double %343, %345
  %347 = fadd double %346, 1.000000e+00
  %348 = call double @pow(double noundef %347, double noundef 6.000000e+00) #3
  %349 = fmul double %341, %348
  %350 = load ptr, ptr %7, align 8, !tbaa !5
  %351 = load double, ptr %350, align 8, !tbaa !9
  %352 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %353 = load double, ptr %352, align 8, !tbaa !11
  %354 = fdiv double %351, %353
  %355 = fmul double 0x401921FB54442D18, %354
  %356 = load ptr, ptr %9, align 8, !tbaa !5
  %357 = load double, ptr %356, align 8, !tbaa !9
  %358 = fmul double %355, %357
  %359 = call double @sin(double noundef %358) #3
  %360 = fmul double %349, %359
  %361 = load ptr, ptr %10, align 8, !tbaa !5
  %362 = load double, ptr %361, align 8, !tbaa !9
  %363 = call double @pow(double noundef %362, double noundef 2.000000e+00) #3
  %364 = fmul double %360, %363
  %365 = load ptr, ptr %7, align 8, !tbaa !5
  %366 = load double, ptr %365, align 8, !tbaa !9
  %367 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %368 = load double, ptr %367, align 8, !tbaa !11
  %369 = fdiv double %366, %368
  %370 = fmul double 0x401921FB54442D18, %369
  %371 = load ptr, ptr %10, align 8, !tbaa !5
  %372 = load double, ptr %371, align 8, !tbaa !9
  %373 = fmul double %370, %372
  %374 = call double @cos(double noundef %373) #3
  %375 = fneg double %364
  %376 = call double @llvm.fmuladd.f64(double %375, double %374, double %333)
  %377 = load ptr, ptr %7, align 8, !tbaa !5
  %378 = load double, ptr %377, align 8, !tbaa !9
  %379 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %380 = load double, ptr %379, align 8, !tbaa !11
  %381 = fdiv double %378, %380
  %382 = fsub double %381, 1.000000e+00
  %383 = call double @pow(double noundef %382, double noundef 6.000000e+00) #3
  %384 = fmul double 0x403EE213A7DA8882, %383
  %385 = load ptr, ptr %7, align 8, !tbaa !5
  %386 = load double, ptr %385, align 8, !tbaa !9
  %387 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %388 = load double, ptr %387, align 8, !tbaa !11
  %389 = fdiv double %386, %388
  %390 = fadd double %389, 1.000000e+00
  %391 = call double @pow(double noundef %390, double noundef 5.000000e+00) #3
  %392 = fmul double %384, %391
  %393 = load ptr, ptr %9, align 8, !tbaa !5
  %394 = load double, ptr %393, align 8, !tbaa !9
  %395 = fmul double %392, %394
  %396 = load ptr, ptr %7, align 8, !tbaa !5
  %397 = load double, ptr %396, align 8, !tbaa !9
  %398 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %399 = load double, ptr %398, align 8, !tbaa !11
  %400 = fdiv double %397, %399
  %401 = fmul double 0x401921FB54442D18, %400
  %402 = load ptr, ptr %9, align 8, !tbaa !5
  %403 = load double, ptr %402, align 8, !tbaa !9
  %404 = fmul double %401, %403
  %405 = call double @cos(double noundef %404) #3
  %406 = fmul double %395, %405
  %407 = load ptr, ptr %7, align 8, !tbaa !5
  %408 = load double, ptr %407, align 8, !tbaa !9
  %409 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %410 = load double, ptr %409, align 8, !tbaa !11
  %411 = fdiv double %408, %410
  %412 = fmul double 0x401921FB54442D18, %411
  %413 = load ptr, ptr %10, align 8, !tbaa !5
  %414 = load double, ptr %413, align 8, !tbaa !9
  %415 = fmul double %412, %414
  %416 = call double @cos(double noundef %415) #3
  %417 = call double @llvm.fmuladd.f64(double %406, double %416, double %376)
  %418 = load ptr, ptr %7, align 8, !tbaa !5
  %419 = load double, ptr %418, align 8, !tbaa !9
  %420 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %421 = load double, ptr %420, align 8, !tbaa !11
  %422 = fdiv double %419, %421
  %423 = fsub double %422, 1.000000e+00
  %424 = call double @pow(double noundef %423, double noundef 6.000000e+00) #3
  %425 = fmul double 0x403EE213A7DA8882, %424
  %426 = load ptr, ptr %7, align 8, !tbaa !5
  %427 = load double, ptr %426, align 8, !tbaa !9
  %428 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %429 = load double, ptr %428, align 8, !tbaa !11
  %430 = fdiv double %427, %429
  %431 = fadd double %430, 1.000000e+00
  %432 = call double @pow(double noundef %431, double noundef 5.000000e+00) #3
  %433 = fmul double %425, %432
  %434 = load ptr, ptr %7, align 8, !tbaa !5
  %435 = load double, ptr %434, align 8, !tbaa !9
  %436 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %437 = load double, ptr %436, align 8, !tbaa !11
  %438 = fdiv double %435, %437
  %439 = fmul double 0x401921FB54442D18, %438
  %440 = load ptr, ptr %9, align 8, !tbaa !5
  %441 = load double, ptr %440, align 8, !tbaa !9
  %442 = fmul double %439, %441
  %443 = call double @sin(double noundef %442) #3
  %444 = fmul double %433, %443
  %445 = load ptr, ptr %7, align 8, !tbaa !5
  %446 = load double, ptr %445, align 8, !tbaa !9
  %447 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %448 = load double, ptr %447, align 8, !tbaa !11
  %449 = fdiv double %446, %448
  %450 = fmul double 0x401921FB54442D18, %449
  %451 = load ptr, ptr %10, align 8, !tbaa !5
  %452 = load double, ptr %451, align 8, !tbaa !9
  %453 = fmul double %450, %452
  %454 = call double @sin(double noundef %453) #3
  %455 = fmul double %444, %454
  %456 = load ptr, ptr %10, align 8, !tbaa !5
  %457 = load double, ptr %456, align 8, !tbaa !9
  %458 = fneg double %455
  %459 = call double @llvm.fmuladd.f64(double %458, double %457, double %417)
  %460 = load ptr, ptr %7, align 8, !tbaa !5
  %461 = load double, ptr %460, align 8, !tbaa !9
  %462 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %463 = load double, ptr %462, align 8, !tbaa !11
  %464 = fdiv double %461, %463
  %465 = fsub double %464, 1.000000e+00
  %466 = call double @pow(double noundef %465, double noundef 6.000000e+00) #3
  %467 = fmul double 1.228800e+01, %466
  %468 = load ptr, ptr %7, align 8, !tbaa !5
  %469 = load double, ptr %468, align 8, !tbaa !9
  %470 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %471 = load double, ptr %470, align 8, !tbaa !11
  %472 = fdiv double %469, %471
  %473 = fadd double %472, 1.000000e+00
  %474 = call double @pow(double noundef %473, double noundef 4.000000e+00) #3
  %475 = fmul double %467, %474
  %476 = load ptr, ptr %7, align 8, !tbaa !5
  %477 = load double, ptr %476, align 8, !tbaa !9
  %478 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %479 = load double, ptr %478, align 8, !tbaa !11
  %480 = fdiv double %477, %479
  %481 = fmul double 0x401921FB54442D18, %480
  %482 = load ptr, ptr %9, align 8, !tbaa !5
  %483 = load double, ptr %482, align 8, !tbaa !9
  %484 = fmul double %481, %483
  %485 = call double @sin(double noundef %484) #3
  %486 = fmul double %475, %485
  %487 = load ptr, ptr %7, align 8, !tbaa !5
  %488 = load double, ptr %487, align 8, !tbaa !9
  %489 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %490 = load double, ptr %489, align 8, !tbaa !11
  %491 = fdiv double %488, %490
  %492 = fmul double 0x401921FB54442D18, %491
  %493 = load ptr, ptr %10, align 8, !tbaa !5
  %494 = load double, ptr %493, align 8, !tbaa !9
  %495 = fmul double %492, %494
  %496 = call double @cos(double noundef %495) #3
  %497 = call double @llvm.fmuladd.f64(double %486, double %496, double %459)
  %498 = load ptr, ptr %7, align 8, !tbaa !5
  %499 = load double, ptr %498, align 8, !tbaa !9
  %500 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %501 = load double, ptr %500, align 8, !tbaa !11
  %502 = fdiv double %499, %501
  %503 = fsub double %502, 1.000000e+00
  %504 = call double @pow(double noundef %503, double noundef 5.000000e+00) #3
  %505 = fmul double 0x403EE213A7DA8882, %504
  %506 = load ptr, ptr %7, align 8, !tbaa !5
  %507 = load double, ptr %506, align 8, !tbaa !9
  %508 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %509 = load double, ptr %508, align 8, !tbaa !11
  %510 = fdiv double %507, %509
  %511 = fadd double %510, 1.000000e+00
  %512 = call double @pow(double noundef %511, double noundef 6.000000e+00) #3
  %513 = fmul double %505, %512
  %514 = load ptr, ptr %9, align 8, !tbaa !5
  %515 = load double, ptr %514, align 8, !tbaa !9
  %516 = fmul double %513, %515
  %517 = load ptr, ptr %7, align 8, !tbaa !5
  %518 = load double, ptr %517, align 8, !tbaa !9
  %519 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %520 = load double, ptr %519, align 8, !tbaa !11
  %521 = fdiv double %518, %520
  %522 = fmul double 0x401921FB54442D18, %521
  %523 = load ptr, ptr %9, align 8, !tbaa !5
  %524 = load double, ptr %523, align 8, !tbaa !9
  %525 = fmul double %522, %524
  %526 = call double @cos(double noundef %525) #3
  %527 = fmul double %516, %526
  %528 = load ptr, ptr %7, align 8, !tbaa !5
  %529 = load double, ptr %528, align 8, !tbaa !9
  %530 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %531 = load double, ptr %530, align 8, !tbaa !11
  %532 = fdiv double %529, %531
  %533 = fmul double 0x401921FB54442D18, %532
  %534 = load ptr, ptr %10, align 8, !tbaa !5
  %535 = load double, ptr %534, align 8, !tbaa !9
  %536 = fmul double %533, %535
  %537 = call double @cos(double noundef %536) #3
  %538 = call double @llvm.fmuladd.f64(double %527, double %537, double %497)
  %539 = load ptr, ptr %7, align 8, !tbaa !5
  %540 = load double, ptr %539, align 8, !tbaa !9
  %541 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %542 = load double, ptr %541, align 8, !tbaa !11
  %543 = fdiv double %540, %542
  %544 = fsub double %543, 1.000000e+00
  %545 = call double @pow(double noundef %544, double noundef 5.000000e+00) #3
  %546 = fmul double 0x403EE213A7DA8882, %545
  %547 = load ptr, ptr %7, align 8, !tbaa !5
  %548 = load double, ptr %547, align 8, !tbaa !9
  %549 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %550 = load double, ptr %549, align 8, !tbaa !11
  %551 = fdiv double %548, %550
  %552 = fadd double %551, 1.000000e+00
  %553 = call double @pow(double noundef %552, double noundef 6.000000e+00) #3
  %554 = fmul double %546, %553
  %555 = load ptr, ptr %7, align 8, !tbaa !5
  %556 = load double, ptr %555, align 8, !tbaa !9
  %557 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %558 = load double, ptr %557, align 8, !tbaa !11
  %559 = fdiv double %556, %558
  %560 = fmul double 0x401921FB54442D18, %559
  %561 = load ptr, ptr %9, align 8, !tbaa !5
  %562 = load double, ptr %561, align 8, !tbaa !9
  %563 = fmul double %560, %562
  %564 = call double @sin(double noundef %563) #3
  %565 = fmul double %554, %564
  %566 = load ptr, ptr %7, align 8, !tbaa !5
  %567 = load double, ptr %566, align 8, !tbaa !9
  %568 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %569 = load double, ptr %568, align 8, !tbaa !11
  %570 = fdiv double %567, %569
  %571 = fmul double 0x401921FB54442D18, %570
  %572 = load ptr, ptr %10, align 8, !tbaa !5
  %573 = load double, ptr %572, align 8, !tbaa !9
  %574 = fmul double %571, %573
  %575 = call double @sin(double noundef %574) #3
  %576 = fmul double %565, %575
  %577 = load ptr, ptr %10, align 8, !tbaa !5
  %578 = load double, ptr %577, align 8, !tbaa !9
  %579 = fneg double %576
  %580 = call double @llvm.fmuladd.f64(double %579, double %578, double %538)
  %581 = load ptr, ptr %7, align 8, !tbaa !5
  %582 = load double, ptr %581, align 8, !tbaa !9
  %583 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %584 = load double, ptr %583, align 8, !tbaa !11
  %585 = fdiv double %582, %584
  %586 = fsub double %585, 1.000000e+00
  %587 = call double @pow(double noundef %586, double noundef 5.000000e+00) #3
  %588 = fmul double 2.949120e+01, %587
  %589 = load ptr, ptr %7, align 8, !tbaa !5
  %590 = load double, ptr %589, align 8, !tbaa !9
  %591 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %592 = load double, ptr %591, align 8, !tbaa !11
  %593 = fdiv double %590, %592
  %594 = fadd double %593, 1.000000e+00
  %595 = call double @pow(double noundef %594, double noundef 5.000000e+00) #3
  %596 = fmul double %588, %595
  %597 = load ptr, ptr %7, align 8, !tbaa !5
  %598 = load double, ptr %597, align 8, !tbaa !9
  %599 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %600 = load double, ptr %599, align 8, !tbaa !11
  %601 = fdiv double %598, %600
  %602 = fmul double 0x401921FB54442D18, %601
  %603 = load ptr, ptr %9, align 8, !tbaa !5
  %604 = load double, ptr %603, align 8, !tbaa !9
  %605 = fmul double %602, %604
  %606 = call double @sin(double noundef %605) #3
  %607 = fmul double %596, %606
  %608 = load ptr, ptr %7, align 8, !tbaa !5
  %609 = load double, ptr %608, align 8, !tbaa !9
  %610 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %611 = load double, ptr %610, align 8, !tbaa !11
  %612 = fdiv double %609, %611
  %613 = fmul double 0x401921FB54442D18, %612
  %614 = load ptr, ptr %10, align 8, !tbaa !5
  %615 = load double, ptr %614, align 8, !tbaa !9
  %616 = fmul double %613, %615
  %617 = call double @cos(double noundef %616) #3
  %618 = call double @llvm.fmuladd.f64(double %607, double %617, double %580)
  %619 = load ptr, ptr %7, align 8, !tbaa !5
  %620 = load double, ptr %619, align 8, !tbaa !9
  %621 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %622 = load double, ptr %621, align 8, !tbaa !11
  %623 = fdiv double %620, %622
  %624 = fsub double %623, 1.000000e+00
  %625 = call double @pow(double noundef %624, double noundef 4.000000e+00) #3
  %626 = fmul double 1.228800e+01, %625
  %627 = load ptr, ptr %7, align 8, !tbaa !5
  %628 = load double, ptr %627, align 8, !tbaa !9
  %629 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %630 = load double, ptr %629, align 8, !tbaa !11
  %631 = fdiv double %628, %630
  %632 = fadd double %631, 1.000000e+00
  %633 = call double @pow(double noundef %632, double noundef 6.000000e+00) #3
  %634 = fmul double %626, %633
  %635 = load ptr, ptr %7, align 8, !tbaa !5
  %636 = load double, ptr %635, align 8, !tbaa !9
  %637 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %638 = load double, ptr %637, align 8, !tbaa !11
  %639 = fdiv double %636, %638
  %640 = fmul double 0x401921FB54442D18, %639
  %641 = load ptr, ptr %9, align 8, !tbaa !5
  %642 = load double, ptr %641, align 8, !tbaa !9
  %643 = fmul double %640, %642
  %644 = call double @sin(double noundef %643) #3
  %645 = fmul double %634, %644
  %646 = load ptr, ptr %7, align 8, !tbaa !5
  %647 = load double, ptr %646, align 8, !tbaa !9
  %648 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %649 = load double, ptr %648, align 8, !tbaa !11
  %650 = fdiv double %647, %649
  %651 = fmul double 0x401921FB54442D18, %650
  %652 = load ptr, ptr %10, align 8, !tbaa !5
  %653 = load double, ptr %652, align 8, !tbaa !9
  %654 = fmul double %651, %653
  %655 = call double @cos(double noundef %654) #3
  %656 = call double @llvm.fmuladd.f64(double %645, double %655, double %618)
  %657 = fmul double %246, %656
  %658 = load ptr, ptr %7, align 8, !tbaa !5
  %659 = load double, ptr %658, align 8, !tbaa !9
  %660 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %661 = load double, ptr %660, align 8, !tbaa !11
  %662 = fdiv double %659, %661
  %663 = call double @llvm.fmuladd.f64(double 1.000000e+01, double %662, double -5.000000e+00)
  %664 = call double @tanh(double noundef %663) #3
  %665 = fneg double %664
  %666 = call double @exp(double noundef %665) #3
  %667 = fmul double %657, %666
  %668 = call double @llvm.fmuladd.f64(double %232, double %241, double %667)
  %669 = load ptr, ptr %7, align 8, !tbaa !5
  %670 = load double, ptr %669, align 8, !tbaa !9
  %671 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %672 = load double, ptr %671, align 8, !tbaa !11
  %673 = fdiv double %670, %672
  %674 = fsub double %673, 1.000000e+00
  %675 = call double @pow(double noundef %674, double noundef 6.000000e+00) #3
  %676 = fmul double 0x400496B7C53C5B02, %675
  %677 = load ptr, ptr %7, align 8, !tbaa !5
  %678 = load double, ptr %677, align 8, !tbaa !9
  %679 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %680 = load double, ptr %679, align 8, !tbaa !11
  %681 = fdiv double %678, %680
  %682 = fadd double %681, 1.000000e+00
  %683 = call double @pow(double noundef %682, double noundef 6.000000e+00) #3
  %684 = fmul double %676, %683
  %685 = load ptr, ptr %9, align 8, !tbaa !5
  %686 = load double, ptr %685, align 8, !tbaa !9
  %687 = fmul double %684, %686
  %688 = load ptr, ptr %7, align 8, !tbaa !5
  %689 = load double, ptr %688, align 8, !tbaa !9
  %690 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %691 = load double, ptr %690, align 8, !tbaa !11
  %692 = fdiv double %689, %691
  %693 = fmul double 0x401921FB54442D18, %692
  %694 = load ptr, ptr %9, align 8, !tbaa !5
  %695 = load double, ptr %694, align 8, !tbaa !9
  %696 = fmul double %693, %695
  %697 = call double @cos(double noundef %696) #3
  %698 = fmul double %687, %697
  %699 = load ptr, ptr %7, align 8, !tbaa !5
  %700 = load double, ptr %699, align 8, !tbaa !9
  %701 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %702 = load double, ptr %701, align 8, !tbaa !11
  %703 = fdiv double %700, %702
  %704 = fmul double 0x401921FB54442D18, %703
  %705 = load ptr, ptr %10, align 8, !tbaa !5
  %706 = load double, ptr %705, align 8, !tbaa !9
  %707 = fmul double %704, %706
  %708 = call double @cos(double noundef %707) #3
  %709 = load ptr, ptr %7, align 8, !tbaa !5
  %710 = load double, ptr %709, align 8, !tbaa !9
  %711 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %712 = load double, ptr %711, align 8, !tbaa !11
  %713 = fdiv double %710, %712
  %714 = fsub double %713, 1.000000e+00
  %715 = call double @pow(double noundef %714, double noundef 6.000000e+00) #3
  %716 = fmul double 0x400496B7C53C5B02, %715
  %717 = load ptr, ptr %7, align 8, !tbaa !5
  %718 = load double, ptr %717, align 8, !tbaa !9
  %719 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %720 = load double, ptr %719, align 8, !tbaa !11
  %721 = fdiv double %718, %720
  %722 = fadd double %721, 1.000000e+00
  %723 = call double @pow(double noundef %722, double noundef 6.000000e+00) #3
  %724 = fmul double %716, %723
  %725 = load ptr, ptr %7, align 8, !tbaa !5
  %726 = load double, ptr %725, align 8, !tbaa !9
  %727 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %728 = load double, ptr %727, align 8, !tbaa !11
  %729 = fdiv double %726, %728
  %730 = fmul double 0x401921FB54442D18, %729
  %731 = load ptr, ptr %9, align 8, !tbaa !5
  %732 = load double, ptr %731, align 8, !tbaa !9
  %733 = fmul double %730, %732
  %734 = call double @sin(double noundef %733) #3
  %735 = fmul double %724, %734
  %736 = load ptr, ptr %7, align 8, !tbaa !5
  %737 = load double, ptr %736, align 8, !tbaa !9
  %738 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %739 = load double, ptr %738, align 8, !tbaa !11
  %740 = fdiv double %737, %739
  %741 = fmul double 0x401921FB54442D18, %740
  %742 = load ptr, ptr %10, align 8, !tbaa !5
  %743 = load double, ptr %742, align 8, !tbaa !9
  %744 = fmul double %741, %743
  %745 = call double @sin(double noundef %744) #3
  %746 = fmul double %735, %745
  %747 = load ptr, ptr %10, align 8, !tbaa !5
  %748 = load double, ptr %747, align 8, !tbaa !9
  %749 = fmul double %746, %748
  %750 = fneg double %749
  %751 = call double @llvm.fmuladd.f64(double %698, double %708, double %750)
  %752 = load ptr, ptr %7, align 8, !tbaa !5
  %753 = load double, ptr %752, align 8, !tbaa !9
  %754 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %755 = load double, ptr %754, align 8, !tbaa !11
  %756 = fdiv double %753, %755
  %757 = fsub double %756, 1.000000e+00
  %758 = call double @pow(double noundef %757, double noundef 6.000000e+00) #3
  %759 = fmul double 2.457600e+00, %758
  %760 = load ptr, ptr %7, align 8, !tbaa !5
  %761 = load double, ptr %760, align 8, !tbaa !9
  %762 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %763 = load double, ptr %762, align 8, !tbaa !11
  %764 = fdiv double %761, %763
  %765 = fadd double %764, 1.000000e+00
  %766 = call double @pow(double noundef %765, double noundef 5.000000e+00) #3
  %767 = fmul double %759, %766
  %768 = load ptr, ptr %7, align 8, !tbaa !5
  %769 = load double, ptr %768, align 8, !tbaa !9
  %770 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %771 = load double, ptr %770, align 8, !tbaa !11
  %772 = fdiv double %769, %771
  %773 = fmul double 0x401921FB54442D18, %772
  %774 = load ptr, ptr %9, align 8, !tbaa !5
  %775 = load double, ptr %774, align 8, !tbaa !9
  %776 = fmul double %773, %775
  %777 = call double @sin(double noundef %776) #3
  %778 = fmul double %767, %777
  %779 = load ptr, ptr %7, align 8, !tbaa !5
  %780 = load double, ptr %779, align 8, !tbaa !9
  %781 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %782 = load double, ptr %781, align 8, !tbaa !11
  %783 = fdiv double %780, %782
  %784 = fmul double 0x401921FB54442D18, %783
  %785 = load ptr, ptr %10, align 8, !tbaa !5
  %786 = load double, ptr %785, align 8, !tbaa !9
  %787 = fmul double %784, %786
  %788 = call double @cos(double noundef %787) #3
  %789 = call double @llvm.fmuladd.f64(double %778, double %788, double %751)
  %790 = load ptr, ptr %7, align 8, !tbaa !5
  %791 = load double, ptr %790, align 8, !tbaa !9
  %792 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %793 = load double, ptr %792, align 8, !tbaa !11
  %794 = fdiv double %791, %793
  %795 = fsub double %794, 1.000000e+00
  %796 = call double @pow(double noundef %795, double noundef 5.000000e+00) #3
  %797 = fmul double 2.457600e+00, %796
  %798 = load ptr, ptr %7, align 8, !tbaa !5
  %799 = load double, ptr %798, align 8, !tbaa !9
  %800 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %801 = load double, ptr %800, align 8, !tbaa !11
  %802 = fdiv double %799, %801
  %803 = fadd double %802, 1.000000e+00
  %804 = call double @pow(double noundef %803, double noundef 6.000000e+00) #3
  %805 = fmul double %797, %804
  %806 = load ptr, ptr %7, align 8, !tbaa !5
  %807 = load double, ptr %806, align 8, !tbaa !9
  %808 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %809 = load double, ptr %808, align 8, !tbaa !11
  %810 = fdiv double %807, %809
  %811 = fmul double 0x401921FB54442D18, %810
  %812 = load ptr, ptr %9, align 8, !tbaa !5
  %813 = load double, ptr %812, align 8, !tbaa !9
  %814 = fmul double %811, %813
  %815 = call double @sin(double noundef %814) #3
  %816 = fmul double %805, %815
  %817 = load ptr, ptr %7, align 8, !tbaa !5
  %818 = load double, ptr %817, align 8, !tbaa !9
  %819 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %820 = load double, ptr %819, align 8, !tbaa !11
  %821 = fdiv double %818, %820
  %822 = fmul double 0x401921FB54442D18, %821
  %823 = load ptr, ptr %10, align 8, !tbaa !5
  %824 = load double, ptr %823, align 8, !tbaa !9
  %825 = fmul double %822, %824
  %826 = call double @cos(double noundef %825) #3
  %827 = call double @llvm.fmuladd.f64(double %816, double %826, double %789)
  %828 = load ptr, ptr %7, align 8, !tbaa !5
  %829 = load double, ptr %828, align 8, !tbaa !9
  %830 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %831 = load double, ptr %830, align 8, !tbaa !11
  %832 = fdiv double %829, %831
  %833 = call double @llvm.fmuladd.f64(double 1.000000e+01, double %832, double -5.000000e+00)
  %834 = call double @tanh(double noundef %833) #3
  %835 = fneg double %834
  %836 = call double @exp(double noundef %835) #3
  %837 = call double @llvm.fmuladd.f64(double %827, double %836, double %668)
  %838 = load ptr, ptr %7, align 8, !tbaa !5
  %839 = load double, ptr %838, align 8, !tbaa !9
  %840 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %841 = load double, ptr %840, align 8, !tbaa !11
  %842 = fdiv double %839, %841
  %843 = fmul double 0xC0302B9CB4038019, %842
  %844 = load ptr, ptr %7, align 8, !tbaa !5
  %845 = load double, ptr %844, align 8, !tbaa !9
  %846 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %847 = load double, ptr %846, align 8, !tbaa !11
  %848 = fdiv double %845, %847
  %849 = fsub double %848, 1.000000e+00
  %850 = call double @pow(double noundef %849, double noundef 6.000000e+00) #3
  %851 = fmul double %843, %850
  %852 = load ptr, ptr %7, align 8, !tbaa !5
  %853 = load double, ptr %852, align 8, !tbaa !9
  %854 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %855 = load double, ptr %854, align 8, !tbaa !11
  %856 = fdiv double %853, %855
  %857 = fadd double %856, 1.000000e+00
  %858 = call double @pow(double noundef %857, double noundef 6.000000e+00) #3
  %859 = fmul double %851, %858
  %860 = load ptr, ptr %9, align 8, !tbaa !5
  %861 = load double, ptr %860, align 8, !tbaa !9
  %862 = call double @pow(double noundef %861, double noundef 2.000000e+00) #3
  %863 = fmul double %859, %862
  %864 = load ptr, ptr %7, align 8, !tbaa !5
  %865 = load double, ptr %864, align 8, !tbaa !9
  %866 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %867 = load double, ptr %866, align 8, !tbaa !11
  %868 = fdiv double %865, %867
  %869 = fmul double 0x401921FB54442D18, %868
  %870 = load ptr, ptr %9, align 8, !tbaa !5
  %871 = load double, ptr %870, align 8, !tbaa !9
  %872 = fmul double %869, %871
  %873 = call double @sin(double noundef %872) #3
  %874 = fmul double %863, %873
  %875 = load ptr, ptr %7, align 8, !tbaa !5
  %876 = load double, ptr %875, align 8, !tbaa !9
  %877 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %878 = load double, ptr %877, align 8, !tbaa !11
  %879 = fdiv double %876, %878
  %880 = fmul double 0x401921FB54442D18, %879
  %881 = load ptr, ptr %10, align 8, !tbaa !5
  %882 = load double, ptr %881, align 8, !tbaa !9
  %883 = fmul double %880, %882
  %884 = call double @cos(double noundef %883) #3
  %885 = load ptr, ptr %7, align 8, !tbaa !5
  %886 = load double, ptr %885, align 8, !tbaa !9
  %887 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %888 = load double, ptr %887, align 8, !tbaa !11
  %889 = fdiv double %886, %888
  %890 = fmul double 0x40402B9CB4038019, %889
  %891 = load ptr, ptr %7, align 8, !tbaa !5
  %892 = load double, ptr %891, align 8, !tbaa !9
  %893 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %894 = load double, ptr %893, align 8, !tbaa !11
  %895 = fdiv double %892, %894
  %896 = fsub double %895, 1.000000e+00
  %897 = call double @pow(double noundef %896, double noundef 6.000000e+00) #3
  %898 = fmul double %890, %897
  %899 = load ptr, ptr %7, align 8, !tbaa !5
  %900 = load double, ptr %899, align 8, !tbaa !9
  %901 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %902 = load double, ptr %901, align 8, !tbaa !11
  %903 = fdiv double %900, %902
  %904 = fadd double %903, 1.000000e+00
  %905 = call double @pow(double noundef %904, double noundef 6.000000e+00) #3
  %906 = fmul double %898, %905
  %907 = load ptr, ptr %9, align 8, !tbaa !5
  %908 = load double, ptr %907, align 8, !tbaa !9
  %909 = fmul double %906, %908
  %910 = load ptr, ptr %7, align 8, !tbaa !5
  %911 = load double, ptr %910, align 8, !tbaa !9
  %912 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %913 = load double, ptr %912, align 8, !tbaa !11
  %914 = fdiv double %911, %913
  %915 = fmul double 0x401921FB54442D18, %914
  %916 = load ptr, ptr %10, align 8, !tbaa !5
  %917 = load double, ptr %916, align 8, !tbaa !9
  %918 = fmul double %915, %917
  %919 = call double @sin(double noundef %918) #3
  %920 = fmul double %909, %919
  %921 = load ptr, ptr %10, align 8, !tbaa !5
  %922 = load double, ptr %921, align 8, !tbaa !9
  %923 = fmul double %920, %922
  %924 = load ptr, ptr %7, align 8, !tbaa !5
  %925 = load double, ptr %924, align 8, !tbaa !9
  %926 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %927 = load double, ptr %926, align 8, !tbaa !11
  %928 = fdiv double %925, %927
  %929 = fmul double 0x401921FB54442D18, %928
  %930 = load ptr, ptr %9, align 8, !tbaa !5
  %931 = load double, ptr %930, align 8, !tbaa !9
  %932 = fmul double %929, %931
  %933 = call double @cos(double noundef %932) #3
  %934 = fmul double %923, %933
  %935 = call double @llvm.fmuladd.f64(double %874, double %884, double %934)
  %936 = load ptr, ptr %7, align 8, !tbaa !5
  %937 = load double, ptr %936, align 8, !tbaa !9
  %938 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %939 = load double, ptr %938, align 8, !tbaa !11
  %940 = fdiv double %937, %939
  %941 = fmul double 0x40302B9CB4038019, %940
  %942 = load ptr, ptr %7, align 8, !tbaa !5
  %943 = load double, ptr %942, align 8, !tbaa !9
  %944 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %945 = load double, ptr %944, align 8, !tbaa !11
  %946 = fdiv double %943, %945
  %947 = fsub double %946, 1.000000e+00
  %948 = call double @pow(double noundef %947, double noundef 6.000000e+00) #3
  %949 = fmul double %941, %948
  %950 = load ptr, ptr %7, align 8, !tbaa !5
  %951 = load double, ptr %950, align 8, !tbaa !9
  %952 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %953 = load double, ptr %952, align 8, !tbaa !11
  %954 = fdiv double %951, %953
  %955 = fadd double %954, 1.000000e+00
  %956 = call double @pow(double noundef %955, double noundef 6.000000e+00) #3
  %957 = fmul double %949, %956
  %958 = load ptr, ptr %7, align 8, !tbaa !5
  %959 = load double, ptr %958, align 8, !tbaa !9
  %960 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %961 = load double, ptr %960, align 8, !tbaa !11
  %962 = fdiv double %959, %961
  %963 = fmul double 0x401921FB54442D18, %962
  %964 = load ptr, ptr %9, align 8, !tbaa !5
  %965 = load double, ptr %964, align 8, !tbaa !9
  %966 = fmul double %963, %965
  %967 = call double @sin(double noundef %966) #3
  %968 = fmul double %957, %967
  %969 = load ptr, ptr %10, align 8, !tbaa !5
  %970 = load double, ptr %969, align 8, !tbaa !9
  %971 = call double @pow(double noundef %970, double noundef 2.000000e+00) #3
  %972 = fmul double %968, %971
  %973 = load ptr, ptr %7, align 8, !tbaa !5
  %974 = load double, ptr %973, align 8, !tbaa !9
  %975 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %976 = load double, ptr %975, align 8, !tbaa !11
  %977 = fdiv double %974, %976
  %978 = fmul double 0x401921FB54442D18, %977
  %979 = load ptr, ptr %10, align 8, !tbaa !5
  %980 = load double, ptr %979, align 8, !tbaa !9
  %981 = fmul double %978, %980
  %982 = call double @cos(double noundef %981) #3
  %983 = fneg double %972
  %984 = call double @llvm.fmuladd.f64(double %983, double %982, double %935)
  %985 = load ptr, ptr %7, align 8, !tbaa !5
  %986 = load double, ptr %985, align 8, !tbaa !9
  %987 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %988 = load double, ptr %987, align 8, !tbaa !11
  %989 = fdiv double %986, %988
  %990 = fsub double %989, 1.000000e+00
  %991 = call double @pow(double noundef %990, double noundef 6.000000e+00) #3
  %992 = fmul double 0x400496B7C53C5B02, %991
  %993 = load ptr, ptr %7, align 8, !tbaa !5
  %994 = load double, ptr %993, align 8, !tbaa !9
  %995 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %996 = load double, ptr %995, align 8, !tbaa !11
  %997 = fdiv double %994, %996
  %998 = fadd double %997, 1.000000e+00
  %999 = call double @pow(double noundef %998, double noundef 6.000000e+00) #3
  %1000 = fmul double %992, %999
  %1001 = load ptr, ptr %9, align 8, !tbaa !5
  %1002 = load double, ptr %1001, align 8, !tbaa !9
  %1003 = fmul double %1000, %1002
  %1004 = load ptr, ptr %7, align 8, !tbaa !5
  %1005 = load double, ptr %1004, align 8, !tbaa !9
  %1006 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %1007 = load double, ptr %1006, align 8, !tbaa !11
  %1008 = fdiv double %1005, %1007
  %1009 = fmul double 0x401921FB54442D18, %1008
  %1010 = load ptr, ptr %9, align 8, !tbaa !5
  %1011 = load double, ptr %1010, align 8, !tbaa !9
  %1012 = fmul double %1009, %1011
  %1013 = call double @cos(double noundef %1012) #3
  %1014 = fmul double %1003, %1013
  %1015 = load ptr, ptr %7, align 8, !tbaa !5
  %1016 = load double, ptr %1015, align 8, !tbaa !9
  %1017 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %1018 = load double, ptr %1017, align 8, !tbaa !11
  %1019 = fdiv double %1016, %1018
  %1020 = fmul double 0x401921FB54442D18, %1019
  %1021 = load ptr, ptr %10, align 8, !tbaa !5
  %1022 = load double, ptr %1021, align 8, !tbaa !9
  %1023 = fmul double %1020, %1022
  %1024 = call double @cos(double noundef %1023) #3
  %1025 = fneg double %1014
  %1026 = call double @llvm.fmuladd.f64(double %1025, double %1024, double %984)
  %1027 = load ptr, ptr %7, align 8, !tbaa !5
  %1028 = load double, ptr %1027, align 8, !tbaa !9
  %1029 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %1030 = load double, ptr %1029, align 8, !tbaa !11
  %1031 = fdiv double %1028, %1030
  %1032 = fsub double %1031, 1.000000e+00
  %1033 = call double @pow(double noundef %1032, double noundef 6.000000e+00) #3
  %1034 = fmul double 0x400496B7C53C5B02, %1033
  %1035 = load ptr, ptr %7, align 8, !tbaa !5
  %1036 = load double, ptr %1035, align 8, !tbaa !9
  %1037 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %1038 = load double, ptr %1037, align 8, !tbaa !11
  %1039 = fdiv double %1036, %1038
  %1040 = fadd double %1039, 1.000000e+00
  %1041 = call double @pow(double noundef %1040, double noundef 6.000000e+00) #3
  %1042 = fmul double %1034, %1041
  %1043 = load ptr, ptr %7, align 8, !tbaa !5
  %1044 = load double, ptr %1043, align 8, !tbaa !9
  %1045 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %1046 = load double, ptr %1045, align 8, !tbaa !11
  %1047 = fdiv double %1044, %1046
  %1048 = fmul double 0x401921FB54442D18, %1047
  %1049 = load ptr, ptr %9, align 8, !tbaa !5
  %1050 = load double, ptr %1049, align 8, !tbaa !9
  %1051 = fmul double %1048, %1050
  %1052 = call double @sin(double noundef %1051) #3
  %1053 = fmul double %1042, %1052
  %1054 = load ptr, ptr %7, align 8, !tbaa !5
  %1055 = load double, ptr %1054, align 8, !tbaa !9
  %1056 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %1057 = load double, ptr %1056, align 8, !tbaa !11
  %1058 = fdiv double %1055, %1057
  %1059 = fmul double 0x401921FB54442D18, %1058
  %1060 = load ptr, ptr %10, align 8, !tbaa !5
  %1061 = load double, ptr %1060, align 8, !tbaa !9
  %1062 = fmul double %1059, %1061
  %1063 = call double @sin(double noundef %1062) #3
  %1064 = fmul double %1053, %1063
  %1065 = load ptr, ptr %10, align 8, !tbaa !5
  %1066 = load double, ptr %1065, align 8, !tbaa !9
  %1067 = call double @llvm.fmuladd.f64(double %1064, double %1066, double %1026)
  %1068 = load ptr, ptr %7, align 8, !tbaa !5
  %1069 = load double, ptr %1068, align 8, !tbaa !9
  %1070 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %1071 = load double, ptr %1070, align 8, !tbaa !11
  %1072 = fdiv double %1069, %1071
  %1073 = call double @llvm.fmuladd.f64(double 1.000000e+01, double %1072, double -5.000000e+00)
  %1074 = call double @tanh(double noundef %1073) #3
  %1075 = fneg double %1074
  %1076 = call double @exp(double noundef %1075) #3
  %1077 = call double @llvm.fmuladd.f64(double %1067, double %1076, double %837)
  %1078 = load ptr, ptr %7, align 8, !tbaa !5
  %1079 = load double, ptr %1078, align 8, !tbaa !9
  %1080 = getelementptr inbounds %class.CartesianR6_ZoniGyro_CircularGeometry, ptr %11, i32 0, i32 1
  %1081 = load double, ptr %1080, align 8, !tbaa !11
  %1082 = fdiv double %1079, %1081
  %1083 = fdiv double %1077, %1082
  %1084 = fneg double %1083
  %1085 = call double @llvm.fmuladd.f64(double %47, double %57, double %1084)
  ret double %1085
}

; Function Attrs: nounwind
declare double @pow(double noundef, double noundef) #1

; Function Attrs: nounwind
declare double @exp(double noundef) #1

; Function Attrs: nounwind
declare double @tanh(double noundef) #1

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fmuladd.f64(double, double, double) #2

; Function Attrs: nounwind
declare double @sin(double noundef) #1

; Function Attrs: nounwind
declare double @cos(double noundef) #1

attributes #0 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #3 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"double", !7, i64 0}
!11 = !{!12, !10, i64 8}
!12 = !{!"_ZTS37CartesianR6_ZoniGyro_CircularGeometry", !13, i64 0, !10, i64 8}
!13 = !{!"_ZTS10SourceTerm"}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

; Function Attrs: mustprogress nofree nounwind willreturn memory(write, argmem: readwrite) uwtable
define dso_local noundef double @_ZNK37CartesianR6_ZoniGyro_CircularGeometry5rhs_fERKdS1_S1_S1_(ptr noundef nonnull readonly align 8 dereferenceable(16) %0, ptr noundef nonnull readonly align 8 dereferenceable(8) %1, ptr nocapture noundef nonnull readnone align 8 dereferenceable(8) %2, ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %3, ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %4) unnamed_addr #0 align 2 {
  %6 = load double, ptr %1, align 8, !tbaa !5
  %7 = getelementptr inbounds i8, ptr %0, i64 8
  %8 = load double, ptr %7, align 8, !tbaa !9
  %9 = fdiv double %6, %8
  %10 = fadd double %9, -1.000000e+00
  %11 = tail call double @pow(double noundef %10, double noundef 6.000000e+00) #3
  %12 = fmul double %11, 4.096000e-01
  %13 = load double, ptr %1, align 8, !tbaa !5
  %14 = load double, ptr %7, align 8, !tbaa !9
  %15 = fdiv double %13, %14
  %16 = fadd double %15, 1.000000e+00
  %17 = tail call double @pow(double noundef %16, double noundef 6.000000e+00) #3
  %18 = fmul double %12, %17
  %19 = load double, ptr %1, align 8, !tbaa !5
  %20 = load double, ptr %7, align 8, !tbaa !9
  %21 = fdiv double %19, %20
  %22 = tail call double @llvm.fmuladd.f64(double %21, double 1.000000e+01, double -5.000000e+00)
  %23 = tail call double @tanh(double noundef %22) #3
  %24 = tail call double @exp(double noundef %23) #3
  %25 = fmul double %18, %24
  %26 = load double, ptr %1, align 8, !tbaa !5
  %27 = load double, ptr %7, align 8, !tbaa !9
  %28 = fdiv double %26, %27
  %29 = fmul double %28, 0x401921FB54442D18
  %30 = load double, ptr %3, align 8, !tbaa !5
  %31 = fmul double %30, %29
  %32 = tail call double @sin(double noundef %31) #3
  %33 = fmul double %25, %32
  %34 = load double, ptr %1, align 8, !tbaa !5
  %35 = load double, ptr %7, align 8, !tbaa !9
  %36 = fdiv double %34, %35
  %37 = fmul double %36, 0x401921FB54442D18
  %38 = load double, ptr %4, align 8, !tbaa !5
  %39 = fmul double %38, %37
  %40 = tail call double @cos(double noundef %39) #3
  %41 = load double, ptr %1, align 8, !tbaa !5
  %42 = load double, ptr %7, align 8, !tbaa !9
  %43 = fdiv double %41, %42
  %44 = tail call double @llvm.fmuladd.f64(double %43, double 1.000000e+01, double -5.000000e+00)
  %45 = tail call double @tanh(double noundef %44) #3
  %square = fmul double %45, %45
  %46 = tail call double @llvm.fmuladd.f64(double %square, double 1.000000e+01, double -1.000000e+01)
  %47 = fmul double %43, %46
  %48 = load double, ptr %1, align 8, !tbaa !5
  %49 = load double, ptr %7, align 8, !tbaa !9
  %50 = fdiv double %48, %49
  %51 = fadd double %50, -1.000000e+00
  %52 = tail call double @pow(double noundef %51, double noundef 6.000000e+00) #3
  %53 = fmul double %52, 0x400496B7C53C5B02
  %54 = load double, ptr %1, align 8, !tbaa !5
  %55 = load double, ptr %7, align 8, !tbaa !9
  %56 = fdiv double %54, %55
  %57 = fadd double %56, 1.000000e+00
  %58 = tail call double @pow(double noundef %57, double noundef 6.000000e+00) #3
  %59 = fmul double %53, %58
  %60 = load double, ptr %3, align 8, !tbaa !5
  %61 = fmul double %59, %60
  %62 = load double, ptr %1, align 8, !tbaa !5
  %63 = load double, ptr %7, align 8, !tbaa !9
  %64 = fdiv double %62, %63
  %65 = fmul double %64, 0x401921FB54442D18
  %66 = fmul double %60, %65
  %67 = tail call double @cos(double noundef %66) #3
  %68 = fmul double %61, %67
  %69 = load double, ptr %1, align 8, !tbaa !5
  %70 = load double, ptr %7, align 8, !tbaa !9
  %71 = fdiv double %69, %70
  %72 = fmul double %71, 0x401921FB54442D18
  %73 = load double, ptr %4, align 8, !tbaa !5
  %74 = fmul double %73, %72
  %75 = tail call double @cos(double noundef %74) #3
  %76 = load double, ptr %1, align 8, !tbaa !5
  %77 = load double, ptr %7, align 8, !tbaa !9
  %78 = fdiv double %76, %77
  %79 = fadd double %78, -1.000000e+00
  %80 = tail call double @pow(double noundef %79, double noundef 6.000000e+00) #3
  %81 = load double, ptr %1, align 8, !tbaa !5
  %82 = load double, ptr %7, align 8, !tbaa !9
  %83 = fdiv double %81, %82
  %84 = fadd double %83, 1.000000e+00
  %85 = tail call double @pow(double noundef %84, double noundef 6.000000e+00) #3
  %86 = load double, ptr %1, align 8, !tbaa !5
  %87 = load double, ptr %7, align 8, !tbaa !9
  %88 = fdiv double %86, %87
  %89 = fmul double %88, 0x401921FB54442D18
  %90 = load double, ptr %3, align 8, !tbaa !5
  %91 = fmul double %90, %89
  %92 = tail call double @sin(double noundef %91) #3
  %93 = load double, ptr %1, align 8, !tbaa !5
  %94 = load double, ptr %7, align 8, !tbaa !9
  %95 = fdiv double %93, %94
  %96 = fmul double %95, 0x401921FB54442D18
  %97 = load double, ptr %4, align 8, !tbaa !5
  %98 = fmul double %97, %96
  %99 = tail call double @sin(double noundef %98) #3
  %100 = load double, ptr %4, align 8, !tbaa !5
  %101 = fmul double %80, 0xC00496B7C53C5B02
  %102 = fmul double %101, %85
  %103 = fmul double %102, %92
  %104 = fmul double %103, %99
  %105 = fmul double %104, %100
  %106 = tail call double @llvm.fmuladd.f64(double %68, double %75, double %105)
  %107 = load double, ptr %1, align 8, !tbaa !5
  %108 = load double, ptr %7, align 8, !tbaa !9
  %109 = fdiv double %107, %108
  %110 = fadd double %109, -1.000000e+00
  %111 = tail call double @pow(double noundef %110, double noundef 6.000000e+00) #3
  %112 = fmul double %111, 2.457600e+00
  %113 = load double, ptr %1, align 8, !tbaa !5
  %114 = load double, ptr %7, align 8, !tbaa !9
  %115 = fdiv double %113, %114
  %116 = fadd double %115, 1.000000e+00
  %117 = tail call double @pow(double noundef %116, double noundef 5.000000e+00) #3
  %118 = fmul double %112, %117
  %119 = load double, ptr %1, align 8, !tbaa !5
  %120 = load double, ptr %7, align 8, !tbaa !9
  %121 = fdiv double %119, %120
  %122 = fmul double %121, 0x401921FB54442D18
  %123 = load double, ptr %3, align 8, !tbaa !5
  %124 = fmul double %123, %122
  %125 = tail call double @sin(double noundef %124) #3
  %126 = fmul double %118, %125
  %127 = load double, ptr %1, align 8, !tbaa !5
  %128 = load double, ptr %7, align 8, !tbaa !9
  %129 = fdiv double %127, %128
  %130 = fmul double %129, 0x401921FB54442D18
  %131 = load double, ptr %4, align 8, !tbaa !5
  %132 = fmul double %131, %130
  %133 = tail call double @cos(double noundef %132) #3
  %134 = tail call double @llvm.fmuladd.f64(double %126, double %133, double %106)
  %135 = load double, ptr %1, align 8, !tbaa !5
  %136 = load double, ptr %7, align 8, !tbaa !9
  %137 = fdiv double %135, %136
  %138 = fadd double %137, -1.000000e+00
  %139 = tail call double @pow(double noundef %138, double noundef 5.000000e+00) #3
  %140 = fmul double %139, 2.457600e+00
  %141 = load double, ptr %1, align 8, !tbaa !5
  %142 = load double, ptr %7, align 8, !tbaa !9
  %143 = fdiv double %141, %142
  %144 = fadd double %143, 1.000000e+00
  %145 = tail call double @pow(double noundef %144, double noundef 6.000000e+00) #3
  %146 = fmul double %140, %145
  %147 = load double, ptr %1, align 8, !tbaa !5
  %148 = load double, ptr %7, align 8, !tbaa !9
  %149 = fdiv double %147, %148
  %150 = fmul double %149, 0x401921FB54442D18
  %151 = load double, ptr %3, align 8, !tbaa !5
  %152 = fmul double %151, %150
  %153 = tail call double @sin(double noundef %152) #3
  %154 = fmul double %146, %153
  %155 = load double, ptr %1, align 8, !tbaa !5
  %156 = load double, ptr %7, align 8, !tbaa !9
  %157 = fdiv double %155, %156
  %158 = fmul double %157, 0x401921FB54442D18
  %159 = load double, ptr %4, align 8, !tbaa !5
  %160 = fmul double %159, %158
  %161 = tail call double @cos(double noundef %160) #3
  %162 = tail call double @llvm.fmuladd.f64(double %154, double %161, double %134)
  %163 = fmul double %47, %162
  %164 = load double, ptr %1, align 8, !tbaa !5
  %165 = load double, ptr %7, align 8, !tbaa !9
  %166 = fdiv double %164, %165
  %167 = tail call double @llvm.fmuladd.f64(double %166, double 1.000000e+01, double -5.000000e+00)
  %168 = tail call double @tanh(double noundef %167) #3
  %169 = fneg double %168
  %170 = tail call double @exp(double noundef %169) #3
  %171 = load double, ptr %1, align 8, !tbaa !5
  %172 = load double, ptr %7, align 8, !tbaa !9
  %173 = fdiv double %171, %172
  %174 = fadd double %173, -1.000000e+00
  %175 = tail call double @pow(double noundef %174, double noundef 6.000000e+00) #3
  %176 = fmul double %175, 0xC0302B9CB4038019
  %177 = load double, ptr %1, align 8, !tbaa !5
  %178 = load double, ptr %7, align 8, !tbaa !9
  %179 = fdiv double %177, %178
  %180 = fadd double %179, 1.000000e+00
  %181 = tail call double @pow(double noundef %180, double noundef 6.000000e+00) #3
  %182 = fmul double %176, %181
  %183 = load double, ptr %3, align 8, !tbaa !5
  %square175 = fmul double %183, %183
  %184 = fmul double %182, %square175
  %185 = load double, ptr %1, align 8, !tbaa !5
  %186 = load double, ptr %7, align 8, !tbaa !9
  %187 = fdiv double %185, %186
  %188 = fmul double %187, 0x401921FB54442D18
  %189 = fmul double %183, %188
  %190 = tail call double @sin(double noundef %189) #3
  %191 = fmul double %184, %190
  %192 = load double, ptr %1, align 8, !tbaa !5
  %193 = load double, ptr %7, align 8, !tbaa !9
  %194 = fdiv double %192, %193
  %195 = fmul double %194, 0x401921FB54442D18
  %196 = load double, ptr %4, align 8, !tbaa !5
  %197 = fmul double %196, %195
  %198 = tail call double @cos(double noundef %197) #3
  %199 = load double, ptr %1, align 8, !tbaa !5
  %200 = load double, ptr %7, align 8, !tbaa !9
  %201 = fdiv double %199, %200
  %202 = fadd double %201, -1.000000e+00
  %203 = tail call double @pow(double noundef %202, double noundef 6.000000e+00) #3
  %204 = load double, ptr %1, align 8, !tbaa !5
  %205 = load double, ptr %7, align 8, !tbaa !9
  %206 = fdiv double %204, %205
  %207 = fadd double %206, 1.000000e+00
  %208 = tail call double @pow(double noundef %207, double noundef 6.000000e+00) #3
  %209 = load double, ptr %3, align 8, !tbaa !5
  %210 = load double, ptr %1, align 8, !tbaa !5
  %211 = load double, ptr %7, align 8, !tbaa !9
  %212 = fdiv double %210, %211
  %213 = fmul double %212, 0x401921FB54442D18
  %214 = load double, ptr %4, align 8, !tbaa !5
  %215 = fmul double %214, %213
  %216 = tail call double @sin(double noundef %215) #3
  %217 = load double, ptr %4, align 8, !tbaa !5
  %218 = load double, ptr %1, align 8, !tbaa !5
  %219 = load double, ptr %7, align 8, !tbaa !9
  %220 = fdiv double %218, %219
  %221 = fmul double %220, 0x401921FB54442D18
  %222 = load double, ptr %3, align 8, !tbaa !5
  %223 = fmul double %222, %221
  %224 = tail call double @cos(double noundef %223) #3
  %225 = fmul double %203, 0xC0402B9CB4038019
  %226 = fmul double %225, %208
  %227 = fmul double %226, %209
  %228 = fmul double %227, %216
  %229 = fmul double %228, %217
  %230 = fmul double %229, %224
  %231 = tail call double @llvm.fmuladd.f64(double %191, double %198, double %230)
  %232 = load double, ptr %1, align 8, !tbaa !5
  %233 = load double, ptr %7, align 8, !tbaa !9
  %234 = fdiv double %232, %233
  %235 = fadd double %234, -1.000000e+00
  %236 = tail call double @pow(double noundef %235, double noundef 6.000000e+00) #3
  %237 = load double, ptr %1, align 8, !tbaa !5
  %238 = load double, ptr %7, align 8, !tbaa !9
  %239 = fdiv double %237, %238
  %240 = fadd double %239, 1.000000e+00
  %241 = tail call double @pow(double noundef %240, double noundef 6.000000e+00) #3
  %242 = load double, ptr %1, align 8, !tbaa !5
  %243 = load double, ptr %7, align 8, !tbaa !9
  %244 = fdiv double %242, %243
  %245 = fmul double %244, 0x401921FB54442D18
  %246 = load double, ptr %3, align 8, !tbaa !5
  %247 = fmul double %246, %245
  %248 = tail call double @sin(double noundef %247) #3
  %249 = load double, ptr %4, align 8, !tbaa !5
  %square176 = fmul double %249, %249
  %250 = load double, ptr %1, align 8, !tbaa !5
  %251 = load double, ptr %7, align 8, !tbaa !9
  %252 = fdiv double %250, %251
  %253 = fmul double %252, 0x401921FB54442D18
  %254 = fmul double %249, %253
  %255 = tail call double @cos(double noundef %254) #3
  %256 = fmul double %236, 0xC0302B9CB4038019
  %257 = fmul double %256, %241
  %258 = fmul double %257, %248
  %259 = fmul double %258, %square176
  %260 = tail call double @llvm.fmuladd.f64(double %259, double %255, double %231)
  %261 = load double, ptr %1, align 8, !tbaa !5
  %262 = load double, ptr %7, align 8, !tbaa !9
  %263 = fdiv double %261, %262
  %264 = fadd double %263, -1.000000e+00
  %265 = tail call double @pow(double noundef %264, double noundef 6.000000e+00) #3
  %266 = fmul double %265, 0x403EE213A7DA8882
  %267 = load double, ptr %1, align 8, !tbaa !5
  %268 = load double, ptr %7, align 8, !tbaa !9
  %269 = fdiv double %267, %268
  %270 = fadd double %269, 1.000000e+00
  %271 = tail call double @pow(double noundef %270, double noundef 5.000000e+00) #3
  %272 = fmul double %266, %271
  %273 = load double, ptr %3, align 8, !tbaa !5
  %274 = fmul double %272, %273
  %275 = load double, ptr %1, align 8, !tbaa !5
  %276 = load double, ptr %7, align 8, !tbaa !9
  %277 = fdiv double %275, %276
  %278 = fmul double %277, 0x401921FB54442D18
  %279 = fmul double %273, %278
  %280 = tail call double @cos(double noundef %279) #3
  %281 = fmul double %274, %280
  %282 = load double, ptr %1, align 8, !tbaa !5
  %283 = load double, ptr %7, align 8, !tbaa !9
  %284 = fdiv double %282, %283
  %285 = fmul double %284, 0x401921FB54442D18
  %286 = load double, ptr %4, align 8, !tbaa !5
  %287 = fmul double %286, %285
  %288 = tail call double @cos(double noundef %287) #3
  %289 = tail call double @llvm.fmuladd.f64(double %281, double %288, double %260)
  %290 = load double, ptr %1, align 8, !tbaa !5
  %291 = load double, ptr %7, align 8, !tbaa !9
  %292 = fdiv double %290, %291
  %293 = fadd double %292, -1.000000e+00
  %294 = tail call double @pow(double noundef %293, double noundef 6.000000e+00) #3
  %295 = load double, ptr %1, align 8, !tbaa !5
  %296 = load double, ptr %7, align 8, !tbaa !9
  %297 = fdiv double %295, %296
  %298 = fadd double %297, 1.000000e+00
  %299 = tail call double @pow(double noundef %298, double noundef 5.000000e+00) #3
  %300 = load double, ptr %1, align 8, !tbaa !5
  %301 = load double, ptr %7, align 8, !tbaa !9
  %302 = fdiv double %300, %301
  %303 = fmul double %302, 0x401921FB54442D18
  %304 = load double, ptr %3, align 8, !tbaa !5
  %305 = fmul double %304, %303
  %306 = tail call double @sin(double noundef %305) #3
  %307 = load double, ptr %1, align 8, !tbaa !5
  %308 = load double, ptr %7, align 8, !tbaa !9
  %309 = fdiv double %307, %308
  %310 = fmul double %309, 0x401921FB54442D18
  %311 = load double, ptr %4, align 8, !tbaa !5
  %312 = fmul double %311, %310
  %313 = tail call double @sin(double noundef %312) #3
  %314 = load double, ptr %4, align 8, !tbaa !5
  %315 = fmul double %294, 0xC03EE213A7DA8882
  %316 = fmul double %315, %299
  %317 = fmul double %316, %306
  %318 = fmul double %317, %313
  %319 = tail call double @llvm.fmuladd.f64(double %318, double %314, double %289)
  %320 = load double, ptr %1, align 8, !tbaa !5
  %321 = load double, ptr %7, align 8, !tbaa !9
  %322 = fdiv double %320, %321
  %323 = fadd double %322, -1.000000e+00
  %324 = tail call double @pow(double noundef %323, double noundef 6.000000e+00) #3
  %325 = fmul double %324, 1.228800e+01
  %326 = load double, ptr %1, align 8, !tbaa !5
  %327 = load double, ptr %7, align 8, !tbaa !9
  %328 = fdiv double %326, %327
  %329 = fadd double %328, 1.000000e+00
  %330 = tail call double @pow(double noundef %329, double noundef 4.000000e+00) #3
  %331 = fmul double %325, %330
  %332 = load double, ptr %1, align 8, !tbaa !5
  %333 = load double, ptr %7, align 8, !tbaa !9
  %334 = fdiv double %332, %333
  %335 = fmul double %334, 0x401921FB54442D18
  %336 = load double, ptr %3, align 8, !tbaa !5
  %337 = fmul double %336, %335
  %338 = tail call double @sin(double noundef %337) #3
  %339 = fmul double %331, %338
  %340 = load double, ptr %1, align 8, !tbaa !5
  %341 = load double, ptr %7, align 8, !tbaa !9
  %342 = fdiv double %340, %341
  %343 = fmul double %342, 0x401921FB54442D18
  %344 = load double, ptr %4, align 8, !tbaa !5
  %345 = fmul double %344, %343
  %346 = tail call double @cos(double noundef %345) #3
  %347 = tail call double @llvm.fmuladd.f64(double %339, double %346, double %319)
  %348 = load double, ptr %1, align 8, !tbaa !5
  %349 = load double, ptr %7, align 8, !tbaa !9
  %350 = fdiv double %348, %349
  %351 = fadd double %350, -1.000000e+00
  %352 = tail call double @pow(double noundef %351, double noundef 5.000000e+00) #3
  %353 = fmul double %352, 0x403EE213A7DA8882
  %354 = load double, ptr %1, align 8, !tbaa !5
  %355 = load double, ptr %7, align 8, !tbaa !9
  %356 = fdiv double %354, %355
  %357 = fadd double %356, 1.000000e+00
  %358 = tail call double @pow(double noundef %357, double noundef 6.000000e+00) #3
  %359 = fmul double %353, %358
  %360 = load double, ptr %3, align 8, !tbaa !5
  %361 = fmul double %359, %360
  %362 = load double, ptr %1, align 8, !tbaa !5
  %363 = load double, ptr %7, align 8, !tbaa !9
  %364 = fdiv double %362, %363
  %365 = fmul double %364, 0x401921FB54442D18
  %366 = fmul double %360, %365
  %367 = tail call double @cos(double noundef %366) #3
  %368 = fmul double %361, %367
  %369 = load double, ptr %1, align 8, !tbaa !5
  %370 = load double, ptr %7, align 8, !tbaa !9
  %371 = fdiv double %369, %370
  %372 = fmul double %371, 0x401921FB54442D18
  %373 = load double, ptr %4, align 8, !tbaa !5
  %374 = fmul double %373, %372
  %375 = tail call double @cos(double noundef %374) #3
  %376 = tail call double @llvm.fmuladd.f64(double %368, double %375, double %347)
  %377 = load double, ptr %1, align 8, !tbaa !5
  %378 = load double, ptr %7, align 8, !tbaa !9
  %379 = fdiv double %377, %378
  %380 = fadd double %379, -1.000000e+00
  %381 = tail call double @pow(double noundef %380, double noundef 5.000000e+00) #3
  %382 = load double, ptr %1, align 8, !tbaa !5
  %383 = load double, ptr %7, align 8, !tbaa !9
  %384 = fdiv double %382, %383
  %385 = fadd double %384, 1.000000e+00
  %386 = tail call double @pow(double noundef %385, double noundef 6.000000e+00) #3
  %387 = load double, ptr %1, align 8, !tbaa !5
  %388 = load double, ptr %7, align 8, !tbaa !9
  %389 = fdiv double %387, %388
  %390 = fmul double %389, 0x401921FB54442D18
  %391 = load double, ptr %3, align 8, !tbaa !5
  %392 = fmul double %391, %390
  %393 = tail call double @sin(double noundef %392) #3
  %394 = load double, ptr %1, align 8, !tbaa !5
  %395 = load double, ptr %7, align 8, !tbaa !9
  %396 = fdiv double %394, %395
  %397 = fmul double %396, 0x401921FB54442D18
  %398 = load double, ptr %4, align 8, !tbaa !5
  %399 = fmul double %398, %397
  %400 = tail call double @sin(double noundef %399) #3
  %401 = load double, ptr %4, align 8, !tbaa !5
  %402 = fmul double %381, 0xC03EE213A7DA8882
  %403 = fmul double %402, %386
  %404 = fmul double %403, %393
  %405 = fmul double %404, %400
  %406 = tail call double @llvm.fmuladd.f64(double %405, double %401, double %376)
  %407 = load double, ptr %1, align 8, !tbaa !5
  %408 = load double, ptr %7, align 8, !tbaa !9
  %409 = fdiv double %407, %408
  %410 = fadd double %409, -1.000000e+00
  %411 = tail call double @pow(double noundef %410, double noundef 5.000000e+00) #3
  %412 = fmul double %411, 2.949120e+01
  %413 = load double, ptr %1, align 8, !tbaa !5
  %414 = load double, ptr %7, align 8, !tbaa !9
  %415 = fdiv double %413, %414
  %416 = fadd double %415, 1.000000e+00
  %417 = tail call double @pow(double noundef %416, double noundef 5.000000e+00) #3
  %418 = fmul double %412, %417
  %419 = load double, ptr %1, align 8, !tbaa !5
  %420 = load double, ptr %7, align 8, !tbaa !9
  %421 = fdiv double %419, %420
  %422 = fmul double %421, 0x401921FB54442D18
  %423 = load double, ptr %3, align 8, !tbaa !5
  %424 = fmul double %423, %422
  %425 = tail call double @sin(double noundef %424) #3
  %426 = fmul double %418, %425
  %427 = load double, ptr %1, align 8, !tbaa !5
  %428 = load double, ptr %7, align 8, !tbaa !9
  %429 = fdiv double %427, %428
  %430 = fmul double %429, 0x401921FB54442D18
  %431 = load double, ptr %4, align 8, !tbaa !5
  %432 = fmul double %431, %430
  %433 = tail call double @cos(double noundef %432) #3
  %434 = tail call double @llvm.fmuladd.f64(double %426, double %433, double %406)
  %435 = load double, ptr %1, align 8, !tbaa !5
  %436 = load double, ptr %7, align 8, !tbaa !9
  %437 = fdiv double %435, %436
  %438 = fadd double %437, -1.000000e+00
  %439 = tail call double @pow(double noundef %438, double noundef 4.000000e+00) #3
  %440 = fmul double %439, 1.228800e+01
  %441 = load double, ptr %1, align 8, !tbaa !5
  %442 = load double, ptr %7, align 8, !tbaa !9
  %443 = fdiv double %441, %442
  %444 = fadd double %443, 1.000000e+00
  %445 = tail call double @pow(double noundef %444, double noundef 6.000000e+00) #3
  %446 = fmul double %440, %445
  %447 = load double, ptr %1, align 8, !tbaa !5
  %448 = load double, ptr %7, align 8, !tbaa !9
  %449 = fdiv double %447, %448
  %450 = fmul double %449, 0x401921FB54442D18
  %451 = load double, ptr %3, align 8, !tbaa !5
  %452 = fmul double %451, %450
  %453 = tail call double @sin(double noundef %452) #3
  %454 = fmul double %446, %453
  %455 = load double, ptr %1, align 8, !tbaa !5
  %456 = load double, ptr %7, align 8, !tbaa !9
  %457 = fdiv double %455, %456
  %458 = fmul double %457, 0x401921FB54442D18
  %459 = load double, ptr %4, align 8, !tbaa !5
  %460 = fmul double %459, %458
  %461 = tail call double @cos(double noundef %460) #3
  %462 = tail call double @llvm.fmuladd.f64(double %454, double %461, double %434)
  %463 = fmul double %173, %462
  %464 = load double, ptr %1, align 8, !tbaa !5
  %465 = load double, ptr %7, align 8, !tbaa !9
  %466 = fdiv double %464, %465
  %467 = tail call double @llvm.fmuladd.f64(double %466, double 1.000000e+01, double -5.000000e+00)
  %468 = tail call double @tanh(double noundef %467) #3
  %469 = fneg double %468
  %470 = tail call double @exp(double noundef %469) #3
  %471 = fmul double %463, %470
  %472 = tail call double @llvm.fmuladd.f64(double %163, double %170, double %471)
  %473 = load double, ptr %1, align 8, !tbaa !5
  %474 = load double, ptr %7, align 8, !tbaa !9
  %475 = fdiv double %473, %474
  %476 = fadd double %475, -1.000000e+00
  %477 = tail call double @pow(double noundef %476, double noundef 6.000000e+00) #3
  %478 = fmul double %477, 0x400496B7C53C5B02
  %479 = load double, ptr %1, align 8, !tbaa !5
  %480 = load double, ptr %7, align 8, !tbaa !9
  %481 = fdiv double %479, %480
  %482 = fadd double %481, 1.000000e+00
  %483 = tail call double @pow(double noundef %482, double noundef 6.000000e+00) #3
  %484 = fmul double %478, %483
  %485 = load double, ptr %3, align 8, !tbaa !5
  %486 = fmul double %484, %485
  %487 = load double, ptr %1, align 8, !tbaa !5
  %488 = load double, ptr %7, align 8, !tbaa !9
  %489 = fdiv double %487, %488
  %490 = fmul double %489, 0x401921FB54442D18
  %491 = fmul double %485, %490
  %492 = tail call double @cos(double noundef %491) #3
  %493 = fmul double %486, %492
  %494 = load double, ptr %1, align 8, !tbaa !5
  %495 = load double, ptr %7, align 8, !tbaa !9
  %496 = fdiv double %494, %495
  %497 = fmul double %496, 0x401921FB54442D18
  %498 = load double, ptr %4, align 8, !tbaa !5
  %499 = fmul double %498, %497
  %500 = tail call double @cos(double noundef %499) #3
  %501 = load double, ptr %1, align 8, !tbaa !5
  %502 = load double, ptr %7, align 8, !tbaa !9
  %503 = fdiv double %501, %502
  %504 = fadd double %503, -1.000000e+00
  %505 = tail call double @pow(double noundef %504, double noundef 6.000000e+00) #3
  %506 = load double, ptr %1, align 8, !tbaa !5
  %507 = load double, ptr %7, align 8, !tbaa !9
  %508 = fdiv double %506, %507
  %509 = fadd double %508, 1.000000e+00
  %510 = tail call double @pow(double noundef %509, double noundef 6.000000e+00) #3
  %511 = load double, ptr %1, align 8, !tbaa !5
  %512 = load double, ptr %7, align 8, !tbaa !9
  %513 = fdiv double %511, %512
  %514 = fmul double %513, 0x401921FB54442D18
  %515 = load double, ptr %3, align 8, !tbaa !5
  %516 = fmul double %515, %514
  %517 = tail call double @sin(double noundef %516) #3
  %518 = load double, ptr %1, align 8, !tbaa !5
  %519 = load double, ptr %7, align 8, !tbaa !9
  %520 = fdiv double %518, %519
  %521 = fmul double %520, 0x401921FB54442D18
  %522 = load double, ptr %4, align 8, !tbaa !5
  %523 = fmul double %522, %521
  %524 = tail call double @sin(double noundef %523) #3
  %525 = load double, ptr %4, align 8, !tbaa !5
  %526 = fmul double %505, 0xC00496B7C53C5B02
  %527 = fmul double %526, %510
  %528 = fmul double %527, %517
  %529 = fmul double %528, %524
  %530 = fmul double %529, %525
  %531 = tail call double @llvm.fmuladd.f64(double %493, double %500, double %530)
  %532 = load double, ptr %1, align 8, !tbaa !5
  %533 = load double, ptr %7, align 8, !tbaa !9
  %534 = fdiv double %532, %533
  %535 = fadd double %534, -1.000000e+00
  %536 = tail call double @pow(double noundef %535, double noundef 6.000000e+00) #3
  %537 = fmul double %536, 2.457600e+00
  %538 = load double, ptr %1, align 8, !tbaa !5
  %539 = load double, ptr %7, align 8, !tbaa !9
  %540 = fdiv double %538, %539
  %541 = fadd double %540, 1.000000e+00
  %542 = tail call double @pow(double noundef %541, double noundef 5.000000e+00) #3
  %543 = fmul double %537, %542
  %544 = load double, ptr %1, align 8, !tbaa !5
  %545 = load double, ptr %7, align 8, !tbaa !9
  %546 = fdiv double %544, %545
  %547 = fmul double %546, 0x401921FB54442D18
  %548 = load double, ptr %3, align 8, !tbaa !5
  %549 = fmul double %548, %547
  %550 = tail call double @sin(double noundef %549) #3
  %551 = fmul double %543, %550
  %552 = load double, ptr %1, align 8, !tbaa !5
  %553 = load double, ptr %7, align 8, !tbaa !9
  %554 = fdiv double %552, %553
  %555 = fmul double %554, 0x401921FB54442D18
  %556 = load double, ptr %4, align 8, !tbaa !5
  %557 = fmul double %556, %555
  %558 = tail call double @cos(double noundef %557) #3
  %559 = tail call double @llvm.fmuladd.f64(double %551, double %558, double %531)
  %560 = load double, ptr %1, align 8, !tbaa !5
  %561 = load double, ptr %7, align 8, !tbaa !9
  %562 = fdiv double %560, %561
  %563 = fadd double %562, -1.000000e+00
  %564 = tail call double @pow(double noundef %563, double noundef 5.000000e+00) #3
  %565 = fmul double %564, 2.457600e+00
  %566 = load double, ptr %1, align 8, !tbaa !5
  %567 = load double, ptr %7, align 8, !tbaa !9
  %568 = fdiv double %566, %567
  %569 = fadd double %568, 1.000000e+00
  %570 = tail call double @pow(double noundef %569, double noundef 6.000000e+00) #3
  %571 = fmul double %565, %570
  %572 = load double, ptr %1, align 8, !tbaa !5
  %573 = load double, ptr %7, align 8, !tbaa !9
  %574 = fdiv double %572, %573
  %575 = fmul double %574, 0x401921FB54442D18
  %576 = load double, ptr %3, align 8, !tbaa !5
  %577 = fmul double %576, %575
  %578 = tail call double @sin(double noundef %577) #3
  %579 = fmul double %571, %578
  %580 = load double, ptr %1, align 8, !tbaa !5
  %581 = load double, ptr %7, align 8, !tbaa !9
  %582 = fdiv double %580, %581
  %583 = fmul double %582, 0x401921FB54442D18
  %584 = load double, ptr %4, align 8, !tbaa !5
  %585 = fmul double %584, %583
  %586 = tail call double @cos(double noundef %585) #3
  %587 = tail call double @llvm.fmuladd.f64(double %579, double %586, double %559)
  %588 = load double, ptr %1, align 8, !tbaa !5
  %589 = load double, ptr %7, align 8, !tbaa !9
  %590 = fdiv double %588, %589
  %591 = tail call double @llvm.fmuladd.f64(double %590, double 1.000000e+01, double -5.000000e+00)
  %592 = tail call double @tanh(double noundef %591) #3
  %593 = fneg double %592
  %594 = tail call double @exp(double noundef %593) #3
  %595 = tail call double @llvm.fmuladd.f64(double %587, double %594, double %472)
  %596 = load double, ptr %1, align 8, !tbaa !5
  %597 = load double, ptr %7, align 8, !tbaa !9
  %598 = fdiv double %596, %597
  %599 = fmul double %598, 0xC0302B9CB4038019
  %600 = fadd double %598, -1.000000e+00
  %601 = tail call double @pow(double noundef %600, double noundef 6.000000e+00) #3
  %602 = fmul double %601, %599
  %603 = load double, ptr %1, align 8, !tbaa !5
  %604 = load double, ptr %7, align 8, !tbaa !9
  %605 = fdiv double %603, %604
  %606 = fadd double %605, 1.000000e+00
  %607 = tail call double @pow(double noundef %606, double noundef 6.000000e+00) #3
  %608 = fmul double %602, %607
  %609 = load double, ptr %3, align 8, !tbaa !5
  %square177 = fmul double %609, %609
  %610 = fmul double %608, %square177
  %611 = load double, ptr %1, align 8, !tbaa !5
  %612 = load double, ptr %7, align 8, !tbaa !9
  %613 = fdiv double %611, %612
  %614 = fmul double %613, 0x401921FB54442D18
  %615 = fmul double %609, %614
  %616 = tail call double @sin(double noundef %615) #3
  %617 = fmul double %610, %616
  %618 = load double, ptr %1, align 8, !tbaa !5
  %619 = load double, ptr %7, align 8, !tbaa !9
  %620 = fdiv double %618, %619
  %621 = fmul double %620, 0x401921FB54442D18
  %622 = load double, ptr %4, align 8, !tbaa !5
  %623 = fmul double %622, %621
  %624 = tail call double @cos(double noundef %623) #3
  %625 = load double, ptr %1, align 8, !tbaa !5
  %626 = load double, ptr %7, align 8, !tbaa !9
  %627 = fdiv double %625, %626
  %628 = fmul double %627, 0x40402B9CB4038019
  %629 = fadd double %627, -1.000000e+00
  %630 = tail call double @pow(double noundef %629, double noundef 6.000000e+00) #3
  %631 = fmul double %630, %628
  %632 = load double, ptr %1, align 8, !tbaa !5
  %633 = load double, ptr %7, align 8, !tbaa !9
  %634 = fdiv double %632, %633
  %635 = fadd double %634, 1.000000e+00
  %636 = tail call double @pow(double noundef %635, double noundef 6.000000e+00) #3
  %637 = fmul double %631, %636
  %638 = load double, ptr %3, align 8, !tbaa !5
  %639 = fmul double %637, %638
  %640 = load double, ptr %1, align 8, !tbaa !5
  %641 = load double, ptr %7, align 8, !tbaa !9
  %642 = fdiv double %640, %641
  %643 = fmul double %642, 0x401921FB54442D18
  %644 = load double, ptr %4, align 8, !tbaa !5
  %645 = fmul double %644, %643
  %646 = tail call double @sin(double noundef %645) #3
  %647 = fmul double %639, %646
  %648 = load double, ptr %4, align 8, !tbaa !5
  %649 = fmul double %647, %648
  %650 = load double, ptr %1, align 8, !tbaa !5
  %651 = load double, ptr %7, align 8, !tbaa !9
  %652 = fdiv double %650, %651
  %653 = fmul double %652, 0x401921FB54442D18
  %654 = load double, ptr %3, align 8, !tbaa !5
  %655 = fmul double %654, %653
  %656 = tail call double @cos(double noundef %655) #3
  %657 = fmul double %649, %656
  %658 = tail call double @llvm.fmuladd.f64(double %617, double %624, double %657)
  %659 = load double, ptr %1, align 8, !tbaa !5
  %660 = load double, ptr %7, align 8, !tbaa !9
  %661 = fdiv double %659, %660
  %662 = fadd double %661, -1.000000e+00
  %663 = tail call double @pow(double noundef %662, double noundef 6.000000e+00) #3
  %664 = load double, ptr %1, align 8, !tbaa !5
  %665 = load double, ptr %7, align 8, !tbaa !9
  %666 = fdiv double %664, %665
  %667 = fadd double %666, 1.000000e+00
  %668 = tail call double @pow(double noundef %667, double noundef 6.000000e+00) #3
  %669 = load double, ptr %1, align 8, !tbaa !5
  %670 = load double, ptr %7, align 8, !tbaa !9
  %671 = fdiv double %669, %670
  %672 = fmul double %671, 0x401921FB54442D18
  %673 = load double, ptr %3, align 8, !tbaa !5
  %674 = fmul double %673, %672
  %675 = tail call double @sin(double noundef %674) #3
  %676 = load double, ptr %4, align 8, !tbaa !5
  %square178 = fmul double %676, %676
  %677 = load double, ptr %1, align 8, !tbaa !5
  %678 = load double, ptr %7, align 8, !tbaa !9
  %679 = fdiv double %677, %678
  %680 = fmul double %679, 0x401921FB54442D18
  %681 = fmul double %676, %680
  %682 = tail call double @cos(double noundef %681) #3
  %683 = fmul double %661, 0xC0302B9CB4038019
  %684 = fmul double %663, %683
  %685 = fmul double %684, %668
  %686 = fmul double %685, %675
  %687 = fmul double %686, %square178
  %688 = tail call double @llvm.fmuladd.f64(double %687, double %682, double %658)
  %689 = load double, ptr %1, align 8, !tbaa !5
  %690 = load double, ptr %7, align 8, !tbaa !9
  %691 = fdiv double %689, %690
  %692 = fadd double %691, -1.000000e+00
  %693 = tail call double @pow(double noundef %692, double noundef 6.000000e+00) #3
  %694 = load double, ptr %1, align 8, !tbaa !5
  %695 = load double, ptr %7, align 8, !tbaa !9
  %696 = fdiv double %694, %695
  %697 = fadd double %696, 1.000000e+00
  %698 = tail call double @pow(double noundef %697, double noundef 6.000000e+00) #3
  %699 = load double, ptr %3, align 8, !tbaa !5
  %700 = load double, ptr %1, align 8, !tbaa !5
  %701 = load double, ptr %7, align 8, !tbaa !9
  %702 = fdiv double %700, %701
  %703 = fmul double %702, 0x401921FB54442D18
  %704 = fmul double %699, %703
  %705 = tail call double @cos(double noundef %704) #3
  %706 = load double, ptr %1, align 8, !tbaa !5
  %707 = load double, ptr %7, align 8, !tbaa !9
  %708 = fdiv double %706, %707
  %709 = fmul double %708, 0x401921FB54442D18
  %710 = load double, ptr %4, align 8, !tbaa !5
  %711 = fmul double %710, %709
  %712 = tail call double @cos(double noundef %711) #3
  %713 = fmul double %693, 0xC00496B7C53C5B02
  %714 = fmul double %713, %698
  %715 = fmul double %714, %699
  %716 = fmul double %715, %705
  %717 = tail call double @llvm.fmuladd.f64(double %716, double %712, double %688)
  %718 = load double, ptr %1, align 8, !tbaa !5
  %719 = load double, ptr %7, align 8, !tbaa !9
  %720 = fdiv double %718, %719
  %721 = fadd double %720, -1.000000e+00
  %722 = tail call double @pow(double noundef %721, double noundef 6.000000e+00) #3
  %723 = fmul double %722, 0x400496B7C53C5B02
  %724 = load double, ptr %1, align 8, !tbaa !5
  %725 = load double, ptr %7, align 8, !tbaa !9
  %726 = fdiv double %724, %725
  %727 = fadd double %726, 1.000000e+00
  %728 = tail call double @pow(double noundef %727, double noundef 6.000000e+00) #3
  %729 = fmul double %723, %728
  %730 = load double, ptr %1, align 8, !tbaa !5
  %731 = load double, ptr %7, align 8, !tbaa !9
  %732 = fdiv double %730, %731
  %733 = fmul double %732, 0x401921FB54442D18
  %734 = load double, ptr %3, align 8, !tbaa !5
  %735 = fmul double %734, %733
  %736 = tail call double @sin(double noundef %735) #3
  %737 = fmul double %729, %736
  %738 = load double, ptr %1, align 8, !tbaa !5
  %739 = load double, ptr %7, align 8, !tbaa !9
  %740 = fdiv double %738, %739
  %741 = fmul double %740, 0x401921FB54442D18
  %742 = load double, ptr %4, align 8, !tbaa !5
  %743 = fmul double %742, %741
  %744 = tail call double @sin(double noundef %743) #3
  %745 = fmul double %737, %744
  %746 = load double, ptr %4, align 8, !tbaa !5
  %747 = tail call double @llvm.fmuladd.f64(double %745, double %746, double %717)
  %748 = load double, ptr %1, align 8, !tbaa !5
  %749 = load double, ptr %7, align 8, !tbaa !9
  %750 = fdiv double %748, %749
  %751 = tail call double @llvm.fmuladd.f64(double %750, double 1.000000e+01, double -5.000000e+00)
  %752 = tail call double @tanh(double noundef %751) #3
  %753 = fneg double %752
  %754 = tail call double @exp(double noundef %753) #3
  %755 = tail call double @llvm.fmuladd.f64(double %747, double %754, double %595)
  %756 = load double, ptr %1, align 8, !tbaa !5
  %757 = load double, ptr %7, align 8, !tbaa !9
  %758 = fdiv double %756, %757
  %759 = fneg double %755
  %760 = fdiv double %759, %758
  %761 = tail call double @llvm.fmuladd.f64(double %33, double %40, double %760)
  ret double %761
}

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @pow(double noundef, double noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @exp(double noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @tanh(double noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fmuladd.f64(double, double, double) #2

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @sin(double noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @cos(double noundef) local_unnamed_addr #1

attributes #0 = { mustprogress nofree nounwind willreturn memory(write, argmem: readwrite) uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { mustprogress nofree nounwind willreturn memory(write) "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #3 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"double", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !6, i64 8}
!10 = !{!"_ZTS37CartesianR6_ZoniGyro_CircularGeometry", !11, i64 0, !6, i64 8}
!11 = !{!"_ZTS10SourceTerm"}


; Effective O3 passes: EarlyCSEPass,GlobalOptPass,InferFunctionAttrsPass,InstCombinePass,PostOrderFunctionAttrsPass,ReassociatePass,SROAPass,TailCallElimPass