Created
April 7, 2011 05:41
-
-
Save jvoorhis/907108 to your computer and use it in GitHub Desktop.
LLVM bytecode dump from Siren fm.rb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ; ModuleID = 'Siren' | |
| %0 = type { float, float, float, float, float } | |
| declare float @powf(float, float) | |
| declare float @sinf(float) | |
| declare float @cosf(float) | |
| declare float @tanf(float) | |
| define float @render_2160090900(float, float, i64, %0*) { | |
| entry: | |
| %4 = getelementptr inbounds %0* %3, i32 0, i32 0 | |
| %5 = getelementptr inbounds %0* %3, i32 0, i32 1 | |
| %6 = getelementptr inbounds %0* %3, i32 0, i32 2 | |
| %7 = getelementptr inbounds %0* %3, i32 0, i32 3 | |
| %8 = getelementptr inbounds %0* %3, i32 0, i32 4 | |
| %9 = load float* %7 | |
| %10 = fmul float 0x3FD3333340000000, %9 | |
| %11 = fcmp olt float %1, 0.000000e+00 | |
| %12 = select i1 %11, float 0.000000e+00, float 1.000000e+00 | |
| %13 = fsub float %1, 0x3F847AE140000000 | |
| %14 = fcmp olt float %13, 0.000000e+00 | |
| %15 = select i1 %14, float 0.000000e+00, float 1.000000e+00 | |
| %16 = fsub float 1.000000e+00, %15 | |
| %17 = fmul float %12, %16 | |
| %18 = fmul float %17, %1 | |
| %19 = fdiv float %18, 0x3F847AE140000000 | |
| %20 = fsub float %1, 0x3F847AE140000000 | |
| %21 = fcmp olt float %20, 0.000000e+00 | |
| %22 = select i1 %21, float 0.000000e+00, float 1.000000e+00 | |
| %23 = load float* %6 | |
| %24 = fsub float %1, %23 | |
| %25 = fadd float %24, 0x3FC99999A0000000 | |
| %26 = fcmp olt float %25, 0.000000e+00 | |
| %27 = select i1 %26, float 0.000000e+00, float 1.000000e+00 | |
| %28 = fsub float 1.000000e+00, %27 | |
| %29 = fmul float %22, %28 | |
| %30 = fsub float %1, 0x3F847AE140000000 | |
| %31 = fdiv float %30, 1.500000e+01 | |
| %32 = fsub float 1.000000e+00, %31 | |
| %33 = fmul float %29, %32 | |
| %34 = fadd float %19, %33 | |
| %35 = load float* %6 | |
| %36 = fsub float %1, %35 | |
| %37 = fadd float %36, 0x3FC99999A0000000 | |
| %38 = fcmp olt float %37, 0.000000e+00 | |
| %39 = select i1 %38, float 0.000000e+00, float 1.000000e+00 | |
| %40 = load float* %6 | |
| %41 = fsub float %1, %40 | |
| %42 = fcmp olt float %41, 0.000000e+00 | |
| %43 = select i1 %42, float 0.000000e+00, float 1.000000e+00 | |
| %44 = fsub float 1.000000e+00, %43 | |
| %45 = fmul float %39, %44 | |
| %46 = fsub float %1, 0x3F847AE140000000 | |
| %47 = fdiv float %46, 1.500000e+01 | |
| %48 = fsub float 1.000000e+00, %47 | |
| %49 = fmul float %45, %48 | |
| %50 = load float* %6 | |
| %51 = fsub float %1, %50 | |
| %52 = fadd float %51, 0x3FC99999A0000000 | |
| %53 = fdiv float %52, 0x3FC99999A0000000 | |
| %54 = fsub float 1.000000e+00, %53 | |
| %55 = fmul float %49, %54 | |
| %56 = fadd float %34, %55 | |
| %57 = fmul float %10, %56 | |
| %58 = load float* %4 | |
| %59 = fmul float 0x401921FB60000000, %58 | |
| %60 = fmul float %59, %1 | |
| %61 = load float* %8 | |
| %62 = fcmp olt float %1, 0.000000e+00 | |
| %63 = select i1 %62, float 0.000000e+00, float 1.000000e+00 | |
| %64 = fsub float %1, 0x3F847AE140000000 | |
| %65 = fcmp olt float %64, 0.000000e+00 | |
| %66 = select i1 %65, float 0.000000e+00, float 1.000000e+00 | |
| %67 = fsub float 1.000000e+00, %66 | |
| %68 = fmul float %63, %67 | |
| %69 = fmul float %68, %1 | |
| %70 = fdiv float %69, 0x3F847AE140000000 | |
| %71 = fsub float %1, 0x3F847AE140000000 | |
| %72 = fcmp olt float %71, 0.000000e+00 | |
| %73 = select i1 %72, float 0.000000e+00, float 1.000000e+00 | |
| %74 = fsub float %1, 3.000000e+00 | |
| %75 = fadd float %74, 0x3F847AE140000000 | |
| %76 = fcmp olt float %75, 0.000000e+00 | |
| %77 = select i1 %76, float 0.000000e+00, float 1.000000e+00 | |
| %78 = fsub float 1.000000e+00, %77 | |
| %79 = fmul float %73, %78 | |
| %80 = fsub float %1, 0x3F847AE140000000 | |
| %81 = fdiv float %80, 3.000000e+00 | |
| %82 = fsub float 1.000000e+00, %81 | |
| %83 = fmul float %79, %82 | |
| %84 = fadd float %70, %83 | |
| %85 = fsub float %1, 3.000000e+00 | |
| %86 = fadd float %85, 0x3F847AE140000000 | |
| %87 = fcmp olt float %86, 0.000000e+00 | |
| %88 = select i1 %87, float 0.000000e+00, float 1.000000e+00 | |
| %89 = fsub float %1, 3.000000e+00 | |
| %90 = fcmp olt float %89, 0.000000e+00 | |
| %91 = select i1 %90, float 0.000000e+00, float 1.000000e+00 | |
| %92 = fsub float 1.000000e+00, %91 | |
| %93 = fmul float %88, %92 | |
| %94 = fsub float %1, 0x3F847AE140000000 | |
| %95 = fdiv float %94, 3.000000e+00 | |
| %96 = fsub float 1.000000e+00, %95 | |
| %97 = fmul float %93, %96 | |
| %98 = fsub float %1, 3.000000e+00 | |
| %99 = fadd float %98, 0x3F847AE140000000 | |
| %100 = fdiv float %99, 0x3F847AE140000000 | |
| %101 = fsub float 1.000000e+00, %100 | |
| %102 = fmul float %97, %101 | |
| %103 = fadd float %84, %102 | |
| %104 = fmul float 1.000000e+00, %103 | |
| %105 = fmul float %61, %104 | |
| %106 = load float* %4 | |
| %107 = fmul float 0x401921FB60000000, %106 | |
| %108 = load float* %5 | |
| %109 = fmul float %107, %108 | |
| %110 = fmul float %109, %1 | |
| %111 = load float* %8 | |
| %112 = fcmp olt float %1, 0.000000e+00 | |
| %113 = select i1 %112, float 0.000000e+00, float 1.000000e+00 | |
| %114 = fsub float %1, 0x3F847AE140000000 | |
| %115 = fcmp olt float %114, 0.000000e+00 | |
| %116 = select i1 %115, float 0.000000e+00, float 1.000000e+00 | |
| %117 = fsub float 1.000000e+00, %116 | |
| %118 = fmul float %113, %117 | |
| %119 = fmul float %118, %1 | |
| %120 = fdiv float %119, 0x3F847AE140000000 | |
| %121 = fsub float %1, 0x3F847AE140000000 | |
| %122 = fcmp olt float %121, 0.000000e+00 | |
| %123 = select i1 %122, float 0.000000e+00, float 1.000000e+00 | |
| %124 = fsub float %1, 0x3FB99999A0000000 | |
| %125 = fadd float %124, 0x3F847AE140000000 | |
| %126 = fcmp olt float %125, 0.000000e+00 | |
| %127 = select i1 %126, float 0.000000e+00, float 1.000000e+00 | |
| %128 = fsub float 1.000000e+00, %127 | |
| %129 = fmul float %123, %128 | |
| %130 = fsub float %1, 0x3F847AE140000000 | |
| %131 = fdiv float %130, 0x3FB99999A0000000 | |
| %132 = fsub float 1.000000e+00, %131 | |
| %133 = fmul float %129, %132 | |
| %134 = fadd float %120, %133 | |
| %135 = fsub float %1, 0x3FB99999A0000000 | |
| %136 = fadd float %135, 0x3F847AE140000000 | |
| %137 = fcmp olt float %136, 0.000000e+00 | |
| %138 = select i1 %137, float 0.000000e+00, float 1.000000e+00 | |
| %139 = fsub float %1, 0x3FB99999A0000000 | |
| %140 = fcmp olt float %139, 0.000000e+00 | |
| %141 = select i1 %140, float 0.000000e+00, float 1.000000e+00 | |
| %142 = fsub float 1.000000e+00, %141 | |
| %143 = fmul float %138, %142 | |
| %144 = fsub float %1, 0x3F847AE140000000 | |
| %145 = fdiv float %144, 0x3FB99999A0000000 | |
| %146 = fsub float 1.000000e+00, %145 | |
| %147 = fmul float %143, %146 | |
| %148 = fsub float %1, 0x3FB99999A0000000 | |
| %149 = fadd float %148, 0x3F847AE140000000 | |
| %150 = fdiv float %149, 0x3F847AE140000000 | |
| %151 = fsub float 1.000000e+00, %150 | |
| %152 = fmul float %147, %151 | |
| %153 = fadd float %134, %152 | |
| %154 = fmul float 5.000000e-01, %153 | |
| %155 = fmul float %111, %154 | |
| %156 = fmul float 0x40B5993400000000, %1 | |
| %157 = call float @sinf(float %156) | |
| %158 = fmul float %155, %157 | |
| %159 = fadd float %110, %158 | |
| %160 = call float @sinf(float %159) | |
| %161 = fmul float %105, %160 | |
| %162 = fadd float %60, %161 | |
| %163 = call float @sinf(float %162) | |
| %164 = fmul float %57, %163 | |
| %165 = sitofp i64 %2 to float | |
| %166 = fadd float %165, 0x400921FB60000000 | |
| %167 = fmul float %166, 2.000000e+00 | |
| %168 = fmul float %167, 0x400921FB60000000 | |
| %169 = fmul float %168, 0x3FE947AE20000000 | |
| %170 = fmul float %169, %0 | |
| %171 = call float @sinf(float %170) | |
| %172 = fmul float 0x3FD3333340000000, %171 | |
| %173 = fadd float %172, 0x3FE6666660000000 | |
| %174 = fmul float %164, %173 | |
| ret float %174 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment