// File: /workspace/github_c_makefile_star2_O1/SimpleDoger[P]Darknet_CPU_Only/activations.c
// Function: activate
float activate(float x, ACTIVATION a)
{
    switch(a){
        case LINEAR:
            return linear_activate(x);
        case LOGISTIC:
            return logistic_activate(x);
        case LOGGY:
            return loggy_activate(x);
        case RELU:
            return relu_activate(x);
        case ELU:
            return elu_activate(x);
        case SELU:
            return selu_activate(x);
        case RELIE:
            return relie_activate(x);
        case RAMP:
            return ramp_activate(x);
        case LEAKY:
            return leaky_activate(x);
        case TANH:
            return tanh_activate(x);
        case PLSE:
            return plse_activate(x);
        case STAIR:
            return stair_activate(x);
        case HARDTAN:
            return hardtan_activate(x);
        case LHTAN:
            return lhtan_activate(x);
    }
    return 0;
}

// Assembly:
subq $0x28, %rsp
cmpl $0xd, %edi
ja 0x27496
movaps %xmm0, %xmm3
movl %edi, %eax
leaq 0x2f385(%rip), %rcx     # 0x565f0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
xorps 0x2bed5(%rip), %xmm3    # 0x53150
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
callq 0x34e0
movsd 0x2be99(%rip), %xmm1    # 0x53128
addsd %xmm1, %xmm0
jmp 0x273dc
movss 0x2bd68(%rip), %xmm0    # 0x53008
minss %xmm3, %xmm0
movss 0x2bfbc(%rip), %xmm1    # 0x53268
cmpltss %xmm1, %xmm3
movaps %xmm3, %xmm2
andnps %xmm0, %xmm2
andps %xmm1, %xmm3
orps %xmm2, %xmm3
jmp 0x275c4
xorps %xmm0, %xmm0
cmpltss %xmm3, %xmm0
movss 0x2bd36(%rip), %xmm1    # 0x53008
andps %xmm0, %xmm1
mulss %xmm3, %xmm1
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
mulsd 0x2f2c8(%rip), %xmm0    # 0x565b0
cvtss2sd %xmm1, %xmm1
addsd %xmm1, %xmm0
jmp 0x275bd
xorps %xmm0, %xmm0
ucomiss %xmm3, %xmm0
jbe 0x2749e
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
mulsd 0x2f280(%rip), %xmm0    # 0x56590
jmp 0x275bd
xorps 0x2be34(%rip), %xmm3    # 0x53150
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
callq 0x34e0
addsd 0x2bdf8(%rip), %xmm0    # 0x53128
movsd 0x2be70(%rip), %xmm1    # 0x531a8
divsd %xmm0, %xmm1
addsd 0x2f264(%rip), %xmm1    # 0x565a8
jmp 0x2751d
xorps %xmm0, %xmm0
cmpltss %xmm3, %xmm0
movss 0x2bcaf(%rip), %xmm1    # 0x53008
andps %xmm0, %xmm1
mulss %xmm1, %xmm3
jmp 0x275c4
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
mulsd 0x2f22c(%rip), %xmm0    # 0x565a0
jmp 0x27385
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
mulsd 0x2f22b(%rip), %xmm0    # 0x565b0
cvtsd2ss %xmm0, %xmm0
xorps %xmm1, %xmm1
cmpltss %xmm3, %xmm1
andps %xmm1, %xmm3
andnps %xmm0, %xmm1
orps %xmm1, %xmm3
jmp 0x275c4
addss %xmm3, %xmm3
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x34e0
addsd 0x2f1eb(%rip), %xmm0    # 0x565a8
movsd %xmm0, 0x8(%rsp)
movsd 0x10(%rsp), %xmm0
callq 0x34e0
addsd 0x2bd52(%rip), %xmm0    # 0x53128
movsd 0x8(%rsp), %xmm1
divsd %xmm0, %xmm1
jmp 0x2751d
xorps %xmm2, %xmm2
ucomiss %xmm2, %xmm3
jae 0x274c7
xorps %xmm1, %xmm1
jmp 0x274cf
movss 0x2f17f(%rip), %xmm0    # 0x56580
ucomiss %xmm3, %xmm0
jbe 0x27529
addss 0x2be4a(%rip), %xmm3    # 0x5325c
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
mulsd 0x2f17f(%rip), %xmm0    # 0x565a0
jmp 0x275bd
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
movsd %xmm0, 0x8(%rsp)
movaps %xmm3, 0x10(%rsp)
callq 0x33f0
cvttsd2si %xmm0, %eax
testb $0x1, %al
jne 0x27557
movsd 0x8(%rsp), %xmm0
mulsd 0x2bcc9(%rip), %xmm0    # 0x53120
callq 0x33f0
jmp 0x275bd
xorps %xmm0, %xmm0
ucomiss %xmm3, %xmm0
cmpless %xmm3, %xmm0
movss 0x2bb94(%rip), %xmm1    # 0x53008
andps %xmm0, %xmm1
mulss %xmm3, %xmm1
xorps %xmm0, %xmm0
cvtss2sd %xmm1, %xmm0
movsd %xmm0, 0x8(%rsp)
ja 0x2758f
xorps %xmm0, %xmm0
jmp 0x27597
xorps %xmm3, %xmm3
jmp 0x275c4
ucomiss 0x2bb63(%rip), %xmm3    # 0x53008
jbe 0x275c4
addss 0x2bdb5(%rip), %xmm3    # 0x53268
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
mulsd 0x2f0ce(%rip), %xmm0    # 0x56590
jmp 0x2754d
movsd 0x2f0e9(%rip), %xmm1    # 0x565b8
movsd %xmm1, 0x8(%rsp)
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
ucomiss %xmm3, %xmm2
ja 0x274e6
xorps %xmm1, %xmm1
jmp 0x274ee
movsd 0x2f0d2(%rip), %xmm1    # 0x565c0
movsd %xmm1, 0x10(%rsp)
movsd %xmm0, 0x20(%rsp)
callq 0x34e0
addsd 0x2f0a1(%rip), %xmm0    # 0x565a8
mulsd 0x10(%rsp), %xmm0
movsd 0x8(%rsp), %xmm1
mulsd 0x20(%rsp), %xmm1
addsd %xmm0, %xmm1
xorps %xmm3, %xmm3
cvtsd2ss %xmm1, %xmm3
jmp 0x275c4
ucomiss 0x2bd2c(%rip), %xmm3    # 0x5325c
jbe 0x275cc
addss 0x2f042(%rip), %xmm3    # 0x56580
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
mulsd 0x2f053(%rip), %xmm0    # 0x565a0
addsd 0x2bbd3(%rip), %xmm0    # 0x53128
jmp 0x275bd
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
movaps 0x10(%rsp), %xmm1
subss %xmm0, %xmm1
xorps %xmm0, %xmm0
cvtss2sd %xmm1, %xmm0
movsd %xmm0, 0x10(%rsp)
movsd 0x8(%rsp), %xmm0
mulsd 0x2bb9e(%rip), %xmm0    # 0x53120
callq 0x33f0
addsd 0x10(%rsp), %xmm0
jmp 0x275bd
movsd 0x2bb91(%rip), %xmm0    # 0x53128
movsd %xmm0, 0x10(%rsp)
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
callq 0x34e0
addsd 0x2eff7(%rip), %xmm0    # 0x565a8
mulsd 0x10(%rsp), %xmm0
addsd 0x8(%rsp), %xmm0
xorps %xmm3, %xmm3
cvtsd2ss %xmm0, %xmm3
movaps %xmm3, %xmm0
addq $0x28, %rsp
retq
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
mulsd 0x2efbd(%rip), %xmm0    # 0x56598
addsd 0x2bb3d(%rip), %xmm0    # 0x53120
jmp 0x275bd