; LLVM IR from SciCompMod/GMGPolar :: src/InputFunctions/SourceTerms (cartesianR2_ZoniShifted_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.CartesianR2_ZoniShifted_CircularGeometry = type { %class.SourceTerm, double }
%class.SourceTerm = type { ptr }

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

; Function Attrs: nounwind
declare double @pow(double noundef, 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

; Function Attrs: nounwind
declare double @exp(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 = !{!"_ZTS40CartesianR2_ZoniShifted_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 @_ZNK40CartesianR2_ZoniShifted_CircularGeometry5rhs_fERKdS1_S1_S1_(ptr nocapture noundef nonnull readonly align 8 dereferenceable(16) %0, ptr nocapture 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 = tail call double @llvm.fmuladd.f64(double %9, double 2.000000e+01, double -1.400000e+01)
  %11 = tail call double @tanh(double noundef %10) #3
  %square = fmul double %11, %11
  %12 = tail call double @llvm.fmuladd.f64(double %square, double 2.000000e+01, double -2.000000e+01)
  %13 = fmul double %9, %12
  %14 = load double, ptr %1, align 8, !tbaa !5
  %15 = load double, ptr %7, align 8, !tbaa !9
  %16 = fdiv double %14, %15
  %17 = fmul double %16, -2.000000e+00
  %18 = fmul double %16, 0x401921FB54442D18
  %19 = load double, ptr %3, align 8, !tbaa !5
  %20 = fmul double %19, %18
  %21 = tail call double @sin(double noundef %20) #3
  %22 = fmul double %17, %21
  %23 = load double, ptr %1, align 8, !tbaa !5
  %24 = load double, ptr %7, align 8, !tbaa !9
  %25 = fdiv double %23, %24
  %26 = fmul double %25, 0x401921FB54442D18
  %27 = load double, ptr %4, align 8, !tbaa !5
  %28 = fmul double %27, %26
  %29 = tail call double @cos(double noundef %28) #3
  %30 = load double, ptr %1, align 8, !tbaa !5
  %31 = load double, ptr %7, align 8, !tbaa !9
  %32 = fdiv double %30, %31
  %33 = fneg double %32
  %34 = tail call double @llvm.fmuladd.f64(double %33, double %32, double 1.000000e+00)
  %35 = fmul double %34, 0x401921FB54442D18
  %36 = load double, ptr %3, align 8, !tbaa !5
  %37 = fmul double %36, %35
  %38 = fmul double %32, 0x401921FB54442D18
  %39 = fmul double %36, %38
  %40 = tail call double @cos(double noundef %39) #3
  %41 = fmul double %40, %37
  %42 = load double, ptr %1, align 8, !tbaa !5
  %43 = load double, ptr %7, align 8, !tbaa !9
  %44 = fdiv double %42, %43
  %45 = fmul double %44, 0x401921FB54442D18
  %46 = load double, ptr %4, align 8, !tbaa !5
  %47 = fmul double %46, %45
  %48 = tail call double @cos(double noundef %47) #3
  %49 = fmul double %41, %48
  %50 = tail call double @llvm.fmuladd.f64(double %22, double %29, double %49)
  %51 = load double, ptr %1, align 8, !tbaa !5
  %52 = load double, ptr %7, align 8, !tbaa !9
  %53 = fdiv double %51, %52
  %54 = fneg double %53
  %55 = tail call double @llvm.fmuladd.f64(double %54, double %53, double 1.000000e+00)
  %56 = fmul double %53, 0x401921FB54442D18
  %57 = load double, ptr %3, align 8, !tbaa !5
  %58 = fmul double %57, %56
  %59 = tail call double @sin(double noundef %58) #3
  %60 = load double, ptr %1, align 8, !tbaa !5
  %61 = load double, ptr %7, align 8, !tbaa !9
  %62 = fdiv double %60, %61
  %63 = fmul double %62, 0x401921FB54442D18
  %64 = load double, ptr %4, align 8, !tbaa !5
  %65 = fmul double %64, %63
  %66 = tail call double @sin(double noundef %65) #3
  %67 = load double, ptr %4, align 8, !tbaa !5
  %68 = fmul double %55, 0xC01921FB54442D18
  %69 = fmul double %59, %68
  %70 = fmul double %69, %66
  %71 = tail call double @llvm.fmuladd.f64(double %70, double %67, double %50)
  %72 = fmul double %13, %71
  %73 = load double, ptr %1, align 8, !tbaa !5
  %74 = load double, ptr %7, align 8, !tbaa !9
  %75 = fdiv double %73, %74
  %76 = tail call double @llvm.fmuladd.f64(double %75, double 2.000000e+01, double -1.400000e+01)
  %77 = tail call double @tanh(double noundef %76) #3
  %78 = fneg double %77
  %79 = tail call double @exp(double noundef %78) #3
  %80 = load double, ptr %1, align 8, !tbaa !5
  %81 = load double, ptr %7, align 8, !tbaa !9
  %82 = fdiv double %80, %81
  %83 = fmul double %82, 0xC03921FB54442D18
  %84 = load double, ptr %3, align 8, !tbaa !5
  %85 = fmul double %84, %83
  %86 = fmul double %82, 0x401921FB54442D18
  %87 = fmul double %84, %86
  %88 = tail call double @cos(double noundef %87) #3
  %89 = fmul double %88, %85
  %90 = load double, ptr %1, align 8, !tbaa !5
  %91 = load double, ptr %7, align 8, !tbaa !9
  %92 = fdiv double %90, %91
  %93 = fmul double %92, 0x401921FB54442D18
  %94 = load double, ptr %4, align 8, !tbaa !5
  %95 = fmul double %94, %93
  %96 = tail call double @cos(double noundef %95) #3
  %97 = load double, ptr %1, align 8, !tbaa !5
  %98 = load double, ptr %7, align 8, !tbaa !9
  %99 = fdiv double %97, %98
  %100 = fmul double %99, 0x403921FB54442D18
  %101 = fmul double %99, 0x401921FB54442D18
  %102 = load double, ptr %3, align 8, !tbaa !5
  %103 = fmul double %102, %101
  %104 = tail call double @sin(double noundef %103) #3
  %105 = fmul double %100, %104
  %106 = load double, ptr %1, align 8, !tbaa !5
  %107 = load double, ptr %7, align 8, !tbaa !9
  %108 = fdiv double %106, %107
  %109 = fmul double %108, 0x401921FB54442D18
  %110 = load double, ptr %4, align 8, !tbaa !5
  %111 = fmul double %110, %109
  %112 = tail call double @sin(double noundef %111) #3
  %113 = fmul double %105, %112
  %114 = load double, ptr %4, align 8, !tbaa !5
  %115 = fmul double %113, %114
  %116 = tail call double @llvm.fmuladd.f64(double %89, double %96, double %115)
  %117 = load double, ptr %1, align 8, !tbaa !5
  %118 = load double, ptr %7, align 8, !tbaa !9
  %119 = fdiv double %117, %118
  %120 = fneg double %119
  %121 = tail call double @llvm.fmuladd.f64(double %120, double %119, double 1.000000e+00)
  %122 = load double, ptr %3, align 8, !tbaa !5
  %square124 = fmul double %122, %122
  %123 = fmul double %119, 0x401921FB54442D18
  %124 = fmul double %122, %123
  %125 = tail call double @sin(double noundef %124) #3
  %126 = load double, ptr %1, align 8, !tbaa !5
  %127 = load double, ptr %7, align 8, !tbaa !9
  %128 = fdiv double %126, %127
  %129 = fmul double %128, 0x401921FB54442D18
  %130 = load double, ptr %4, align 8, !tbaa !5
  %131 = fmul double %130, %129
  %132 = tail call double @cos(double noundef %131) #3
  %133 = fmul double %121, 0xC043BD3CC9BE45DE
  %134 = fmul double %square124, %133
  %135 = fmul double %125, %134
  %136 = tail call double @llvm.fmuladd.f64(double %135, double %132, double %116)
  %137 = load double, ptr %1, align 8, !tbaa !5
  %138 = load double, ptr %7, align 8, !tbaa !9
  %139 = fdiv double %137, %138
  %140 = fneg double %139
  %141 = tail call double @llvm.fmuladd.f64(double %140, double %139, double 1.000000e+00)
  %142 = load double, ptr %3, align 8, !tbaa !5
  %143 = fmul double %139, 0x401921FB54442D18
  %144 = load double, ptr %4, align 8, !tbaa !5
  %145 = fmul double %143, %144
  %146 = tail call double @sin(double noundef %145) #3
  %147 = load double, ptr %4, align 8, !tbaa !5
  %148 = load double, ptr %1, align 8, !tbaa !5
  %149 = load double, ptr %7, align 8, !tbaa !9
  %150 = fdiv double %148, %149
  %151 = fmul double %150, 0x401921FB54442D18
  %152 = load double, ptr %3, align 8, !tbaa !5
  %153 = fmul double %152, %151
  %154 = tail call double @cos(double noundef %153) #3
  %155 = fmul double %141, 0xC053BD3CC9BE45DE
  %156 = fmul double %142, %155
  %157 = fmul double %146, %156
  %158 = fmul double %147, %157
  %159 = tail call double @llvm.fmuladd.f64(double %158, double %154, double %136)
  %160 = load double, ptr %1, align 8, !tbaa !5
  %161 = load double, ptr %7, align 8, !tbaa !9
  %162 = fdiv double %160, %161
  %163 = fneg double %162
  %164 = tail call double @llvm.fmuladd.f64(double %163, double %162, double 1.000000e+00)
  %165 = fmul double %162, 0x401921FB54442D18
  %166 = load double, ptr %3, align 8, !tbaa !5
  %167 = fmul double %166, %165
  %168 = tail call double @sin(double noundef %167) #3
  %169 = load double, ptr %4, align 8, !tbaa !5
  %square125 = fmul double %169, %169
  %170 = load double, ptr %1, align 8, !tbaa !5
  %171 = load double, ptr %7, align 8, !tbaa !9
  %172 = fdiv double %170, %171
  %173 = fmul double %172, 0x401921FB54442D18
  %174 = fmul double %169, %173
  %175 = tail call double @cos(double noundef %174) #3
  %176 = fmul double %164, 0xC043BD3CC9BE45DE
  %177 = fmul double %168, %176
  %178 = fmul double %177, %square125
  %179 = tail call double @llvm.fmuladd.f64(double %178, double %175, double %159)
  %180 = load double, ptr %1, align 8, !tbaa !5
  %181 = load double, ptr %7, align 8, !tbaa !9
  %182 = fdiv double %180, %181
  %183 = fmul double %182, 0x401921FB54442D18
  %184 = load double, ptr %3, align 8, !tbaa !5
  %185 = fmul double %184, %183
  %186 = tail call double @sin(double noundef %185) #3
  %187 = load double, ptr %1, align 8, !tbaa !5
  %188 = load double, ptr %7, align 8, !tbaa !9
  %189 = fdiv double %187, %188
  %190 = fmul double %189, 0x401921FB54442D18
  %191 = load double, ptr %4, align 8, !tbaa !5
  %192 = fmul double %191, %190
  %193 = tail call double @cos(double noundef %192) #3
  %194 = fmul double %186, -2.000000e+00
  %195 = tail call double @llvm.fmuladd.f64(double %194, double %193, double %179)
  %196 = fmul double %82, %195
  %197 = load double, ptr %1, align 8, !tbaa !5
  %198 = load double, ptr %7, align 8, !tbaa !9
  %199 = fdiv double %197, %198
  %200 = tail call double @llvm.fmuladd.f64(double %199, double 2.000000e+01, double -1.400000e+01)
  %201 = tail call double @tanh(double noundef %200) #3
  %202 = fneg double %201
  %203 = tail call double @exp(double noundef %202) #3
  %204 = fmul double %196, %203
  %205 = tail call double @llvm.fmuladd.f64(double %72, double %79, double %204)
  %206 = load double, ptr %1, align 8, !tbaa !5
  %207 = load double, ptr %7, align 8, !tbaa !9
  %208 = fdiv double %206, %207
  %209 = fmul double %208, -2.000000e+00
  %210 = fmul double %208, 0x401921FB54442D18
  %211 = load double, ptr %3, align 8, !tbaa !5
  %212 = fmul double %211, %210
  %213 = tail call double @sin(double noundef %212) #3
  %214 = fmul double %209, %213
  %215 = load double, ptr %1, align 8, !tbaa !5
  %216 = load double, ptr %7, align 8, !tbaa !9
  %217 = fdiv double %215, %216
  %218 = fmul double %217, 0x401921FB54442D18
  %219 = load double, ptr %4, align 8, !tbaa !5
  %220 = fmul double %219, %218
  %221 = tail call double @cos(double noundef %220) #3
  %222 = load double, ptr %1, align 8, !tbaa !5
  %223 = load double, ptr %7, align 8, !tbaa !9
  %224 = fdiv double %222, %223
  %225 = fneg double %224
  %226 = tail call double @llvm.fmuladd.f64(double %225, double %224, double 1.000000e+00)
  %227 = fmul double %226, 0x401921FB54442D18
  %228 = load double, ptr %3, align 8, !tbaa !5
  %229 = fmul double %228, %227
  %230 = fmul double %224, 0x401921FB54442D18
  %231 = fmul double %228, %230
  %232 = tail call double @cos(double noundef %231) #3
  %233 = fmul double %232, %229
  %234 = load double, ptr %1, align 8, !tbaa !5
  %235 = load double, ptr %7, align 8, !tbaa !9
  %236 = fdiv double %234, %235
  %237 = fmul double %236, 0x401921FB54442D18
  %238 = load double, ptr %4, align 8, !tbaa !5
  %239 = fmul double %238, %237
  %240 = tail call double @cos(double noundef %239) #3
  %241 = fmul double %233, %240
  %242 = tail call double @llvm.fmuladd.f64(double %214, double %221, double %241)
  %243 = load double, ptr %1, align 8, !tbaa !5
  %244 = load double, ptr %7, align 8, !tbaa !9
  %245 = fdiv double %243, %244
  %246 = fneg double %245
  %247 = tail call double @llvm.fmuladd.f64(double %246, double %245, double 1.000000e+00)
  %248 = fmul double %245, 0x401921FB54442D18
  %249 = load double, ptr %3, align 8, !tbaa !5
  %250 = fmul double %249, %248
  %251 = tail call double @sin(double noundef %250) #3
  %252 = load double, ptr %1, align 8, !tbaa !5
  %253 = load double, ptr %7, align 8, !tbaa !9
  %254 = fdiv double %252, %253
  %255 = fmul double %254, 0x401921FB54442D18
  %256 = load double, ptr %4, align 8, !tbaa !5
  %257 = fmul double %256, %255
  %258 = tail call double @sin(double noundef %257) #3
  %259 = load double, ptr %4, align 8, !tbaa !5
  %260 = fmul double %247, 0xC01921FB54442D18
  %261 = fmul double %251, %260
  %262 = fmul double %261, %258
  %263 = tail call double @llvm.fmuladd.f64(double %262, double %259, double %242)
  %264 = load double, ptr %1, align 8, !tbaa !5
  %265 = load double, ptr %7, align 8, !tbaa !9
  %266 = fdiv double %264, %265
  %267 = tail call double @llvm.fmuladd.f64(double %266, double 2.000000e+01, double -1.400000e+01)
  %268 = tail call double @tanh(double noundef %267) #3
  %269 = fneg double %268
  %270 = tail call double @exp(double noundef %269) #3
  %271 = tail call double @llvm.fmuladd.f64(double %263, double %270, double %205)
  %272 = load double, ptr %1, align 8, !tbaa !5
  %273 = load double, ptr %7, align 8, !tbaa !9
  %274 = fdiv double %272, %273
  %275 = fmul double %274, 0xC043BD3CC9BE45DE
  %276 = fneg double %274
  %277 = tail call double @llvm.fmuladd.f64(double %276, double %274, double 1.000000e+00)
  %278 = fmul double %275, %277
  %279 = load double, ptr %3, align 8, !tbaa !5
  %square126 = fmul double %279, %279
  %280 = fmul double %square126, %278
  %281 = fmul double %274, 0x401921FB54442D18
  %282 = fmul double %279, %281
  %283 = tail call double @sin(double noundef %282) #3
  %284 = fmul double %283, %280
  %285 = load double, ptr %1, align 8, !tbaa !5
  %286 = load double, ptr %7, align 8, !tbaa !9
  %287 = fdiv double %285, %286
  %288 = fmul double %287, 0x401921FB54442D18
  %289 = load double, ptr %4, align 8, !tbaa !5
  %290 = fmul double %289, %288
  %291 = tail call double @cos(double noundef %290) #3
  %292 = load double, ptr %1, align 8, !tbaa !5
  %293 = load double, ptr %7, align 8, !tbaa !9
  %294 = fdiv double %292, %293
  %295 = fmul double %294, 0x4053BD3CC9BE45DE
  %296 = fneg double %294
  %297 = tail call double @llvm.fmuladd.f64(double %296, double %294, double 1.000000e+00)
  %298 = fmul double %295, %297
  %299 = load double, ptr %3, align 8, !tbaa !5
  %300 = fmul double %299, %298
  %301 = fmul double %294, 0x401921FB54442D18
  %302 = load double, ptr %4, align 8, !tbaa !5
  %303 = fmul double %301, %302
  %304 = tail call double @sin(double noundef %303) #3
  %305 = fmul double %304, %300
  %306 = load double, ptr %4, align 8, !tbaa !5
  %307 = fmul double %306, %305
  %308 = load double, ptr %1, align 8, !tbaa !5
  %309 = load double, ptr %7, align 8, !tbaa !9
  %310 = fdiv double %308, %309
  %311 = fmul double %310, 0x401921FB54442D18
  %312 = load double, ptr %3, align 8, !tbaa !5
  %313 = fmul double %312, %311
  %314 = tail call double @cos(double noundef %313) #3
  %315 = fmul double %307, %314
  %316 = tail call double @llvm.fmuladd.f64(double %284, double %291, double %315)
  %317 = load double, ptr %1, align 8, !tbaa !5
  %318 = load double, ptr %7, align 8, !tbaa !9
  %319 = fdiv double %317, %318
  %320 = fneg double %319
  %321 = tail call double @llvm.fmuladd.f64(double %320, double %319, double 1.000000e+00)
  %322 = fmul double %319, 0x401921FB54442D18
  %323 = load double, ptr %3, align 8, !tbaa !5
  %324 = fmul double %323, %322
  %325 = tail call double @sin(double noundef %324) #3
  %326 = load double, ptr %4, align 8, !tbaa !5
  %square127 = fmul double %326, %326
  %327 = load double, ptr %1, align 8, !tbaa !5
  %328 = load double, ptr %7, align 8, !tbaa !9
  %329 = fdiv double %327, %328
  %330 = fmul double %329, 0x401921FB54442D18
  %331 = fmul double %326, %330
  %332 = tail call double @cos(double noundef %331) #3
  %333 = fmul double %319, 0xC043BD3CC9BE45DE
  %334 = fmul double %333, %321
  %335 = fmul double %325, %334
  %336 = fmul double %335, %square127
  %337 = tail call double @llvm.fmuladd.f64(double %336, double %332, double %316)
  %338 = load double, ptr %1, align 8, !tbaa !5
  %339 = load double, ptr %7, align 8, !tbaa !9
  %340 = fdiv double %338, %339
  %341 = fneg double %340
  %342 = tail call double @llvm.fmuladd.f64(double %341, double %340, double 1.000000e+00)
  %343 = load double, ptr %3, align 8, !tbaa !5
  %344 = fmul double %340, 0x401921FB54442D18
  %345 = fmul double %343, %344
  %346 = tail call double @cos(double noundef %345) #3
  %347 = load double, ptr %1, align 8, !tbaa !5
  %348 = load double, ptr %7, align 8, !tbaa !9
  %349 = fdiv double %347, %348
  %350 = fmul double %349, 0x401921FB54442D18
  %351 = load double, ptr %4, align 8, !tbaa !5
  %352 = fmul double %351, %350
  %353 = tail call double @cos(double noundef %352) #3
  %354 = fmul double %342, 0xC01921FB54442D18
  %355 = fmul double %343, %354
  %356 = fmul double %346, %355
  %357 = tail call double @llvm.fmuladd.f64(double %356, double %353, double %337)
  %358 = load double, ptr %1, align 8, !tbaa !5
  %359 = load double, ptr %7, align 8, !tbaa !9
  %360 = fdiv double %358, %359
  %361 = fneg double %360
  %362 = tail call double @llvm.fmuladd.f64(double %361, double %360, double 1.000000e+00)
  %363 = fmul double %362, 0x401921FB54442D18
  %364 = fmul double %360, 0x401921FB54442D18
  %365 = load double, ptr %3, align 8, !tbaa !5
  %366 = fmul double %365, %364
  %367 = tail call double @sin(double noundef %366) #3
  %368 = fmul double %367, %363
  %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 @sin(double noundef %374) #3
  %376 = fmul double %368, %375
  %377 = load double, ptr %4, align 8, !tbaa !5
  %378 = tail call double @llvm.fmuladd.f64(double %376, double %377, double %357)
  %379 = load double, ptr %1, align 8, !tbaa !5
  %380 = load double, ptr %7, align 8, !tbaa !9
  %381 = fdiv double %379, %380
  %382 = tail call double @llvm.fmuladd.f64(double %381, double 2.000000e+01, double -1.400000e+01)
  %383 = tail call double @tanh(double noundef %382) #3
  %384 = fneg double %383
  %385 = tail call double @exp(double noundef %384) #3
  %386 = tail call double @llvm.fmuladd.f64(double %378, double %385, double %271)
  %387 = fneg double %386
  %388 = load double, ptr %1, align 8, !tbaa !5
  %389 = load double, ptr %7, align 8, !tbaa !9
  %390 = fdiv double %388, %389
  %391 = fdiv double %387, %390
  ret double %391
}

; 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

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @exp(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 = !{!"_ZTS40CartesianR2_ZoniShifted_CircularGeometry", !11, i64 0, !6, i64 8}
!11 = !{!"_ZTS10SourceTerm"}


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