// File: /workspace/github_c_makefile_star2_O1/SimpleDoger[P]Darknet_CPU_Only/layer.c
// Function: free_layer
void free_layer(layer l)
{
    if(l.type == DROPOUT){
        if(l.rand)           free(l.rand);
        return;
    }
    if(l.cweights)           free(l.cweights);
    if(l.indexes)            free(l.indexes);
    if(l.input_layers)       free(l.input_layers);
    if(l.input_sizes)        free(l.input_sizes);
    if(l.map)                free(l.map);
    if(l.rand)               free(l.rand);
    if(l.cost)               free(l.cost);
    if(l.state)              free(l.state);
    if(l.prev_state)         free(l.prev_state);
    if(l.forgot_state)       free(l.forgot_state);
    if(l.forgot_delta)       free(l.forgot_delta);
    if(l.state_delta)        free(l.state_delta);
    if(l.concat)             free(l.concat);
    if(l.concat_delta)       free(l.concat_delta);
    if(l.binary_weights)     free(l.binary_weights);
    if(l.biases)             free(l.biases);
    if(l.bias_updates)       free(l.bias_updates);
    if(l.scales)             free(l.scales);
    if(l.scale_updates)      free(l.scale_updates);
    if(l.weights)            free(l.weights);
    if(l.weight_updates)     free(l.weight_updates);
    if(l.delta)              free(l.delta);
    if(l.output)             free(l.output);
    if(l.squared)            free(l.squared);
    if(l.norms)              free(l.norms);
    if(l.spatial_mean)       free(l.spatial_mean);
    if(l.mean)               free(l.mean);
    if(l.variance)           free(l.variance);
    if(l.mean_delta)         free(l.mean_delta);
    if(l.variance_delta)     free(l.variance_delta);
    if(l.rolling_mean)       free(l.rolling_mean);
    if(l.rolling_variance)   free(l.rolling_variance);
    if(l.x)                  free(l.x);
    if(l.x_norm)             free(l.x_norm);
    if(l.m)                  free(l.m);
    if(l.v)                  free(l.v);
    if(l.z_cpu)              free(l.z_cpu);
    if(l.r_cpu)              free(l.r_cpu);
    if(l.h_cpu)              free(l.h_cpu);
    if(l.binary_input)       free(l.binary_input);

}

// Assembly:
pushq %rbx
leaq 0x10(%rsp), %rbx
cmpl $0x6, (%rbx)
jne 0x37b3f
movq 0x1d0(%rbx), %rdi
jmp 0x37ddd
movq 0x198(%rbx), %rdi
testq %rdi, %rdi
je 0x37b50
callq 0x3040
movq 0x1a0(%rbx), %rdi
testq %rdi, %rdi
je 0x37b61
callq 0x3040
movq 0x1a8(%rbx), %rdi
testq %rdi, %rdi
je 0x37b72
callq 0x3040
movq 0x1b0(%rbx), %rdi
testq %rdi, %rdi
je 0x37b83
callq 0x3040
movq 0x1b8(%rbx), %rdi
testq %rdi, %rdi
je 0x37b94
callq 0x3040
movq 0x1d0(%rbx), %rdi
testq %rdi, %rdi
je 0x37ba5
callq 0x3040
movq 0x1d8(%rbx), %rdi
testq %rdi, %rdi
je 0x37bb6
callq 0x3040
movq 0x1e0(%rbx), %rdi
testq %rdi, %rdi
je 0x37bc7
callq 0x3040
movq 0x1e8(%rbx), %rdi
testq %rdi, %rdi
je 0x37bd8
callq 0x3040
movq 0x1f0(%rbx), %rdi
testq %rdi, %rdi
je 0x37be9
callq 0x3040
movq 0x1f8(%rbx), %rdi
testq %rdi, %rdi
je 0x37bfa
callq 0x3040
movq 0x200(%rbx), %rdi
testq %rdi, %rdi
je 0x37c0b
callq 0x3040
movq 0x218(%rbx), %rdi
testq %rdi, %rdi
je 0x37c1c
callq 0x3040
movq 0x220(%rbx), %rdi
testq %rdi, %rdi
je 0x37c2d
callq 0x3040
movq 0x228(%rbx), %rdi
testq %rdi, %rdi
je 0x37c3e
callq 0x3040
movq 0x230(%rbx), %rdi
testq %rdi, %rdi
je 0x37c4f
callq 0x3040
movq 0x238(%rbx), %rdi
testq %rdi, %rdi
je 0x37c60
callq 0x3040
movq 0x240(%rbx), %rdi
testq %rdi, %rdi
je 0x37c71
callq 0x3040
movq 0x248(%rbx), %rdi
testq %rdi, %rdi
je 0x37c82
callq 0x3040
movq 0x250(%rbx), %rdi
testq %rdi, %rdi
je 0x37c93
callq 0x3040
movq 0x258(%rbx), %rdi
testq %rdi, %rdi
je 0x37ca4
callq 0x3040
movq 0x260(%rbx), %rdi
testq %rdi, %rdi
je 0x37cb5
callq 0x3040
movq 0x268(%rbx), %rdi
testq %rdi, %rdi
je 0x37cc6
callq 0x3040
movq 0x278(%rbx), %rdi
testq %rdi, %rdi
je 0x37cd7
callq 0x3040
movq 0x280(%rbx), %rdi
testq %rdi, %rdi
je 0x37ce8
callq 0x3040
movq 0x288(%rbx), %rdi
testq %rdi, %rdi
je 0x37cf9
callq 0x3040
movq 0x290(%rbx), %rdi
testq %rdi, %rdi
je 0x37d0a
callq 0x3040
movq 0x298(%rbx), %rdi
testq %rdi, %rdi
je 0x37d1b
callq 0x3040
movq 0x2a0(%rbx), %rdi
testq %rdi, %rdi
je 0x37d2c
callq 0x3040
movq 0x2a8(%rbx), %rdi
testq %rdi, %rdi
je 0x37d3d
callq 0x3040
movq 0x2b0(%rbx), %rdi
testq %rdi, %rdi
je 0x37d4e
callq 0x3040
movq 0x2b8(%rbx), %rdi
testq %rdi, %rdi
je 0x37d5f
callq 0x3040
movq 0x2c0(%rbx), %rdi
testq %rdi, %rdi
je 0x37d70
callq 0x3040
movq 0x2c8(%rbx), %rdi
testq %rdi, %rdi
je 0x37d81
callq 0x3040
movq 0x2d0(%rbx), %rdi
testq %rdi, %rdi
je 0x37d92
callq 0x3040
movq 0x2d8(%rbx), %rdi
testq %rdi, %rdi
je 0x37da3
callq 0x3040
movq 0x300(%rbx), %rdi
testq %rdi, %rdi
je 0x37db4
callq 0x3040
movq 0x308(%rbx), %rdi
testq %rdi, %rdi
je 0x37dc5
callq 0x3040
movq 0x310(%rbx), %rdi
testq %rdi, %rdi
je 0x37dd6
callq 0x3040
movq 0x388(%rbx), %rdi
testq %rdi, %rdi
je 0x37de8
popq %rbx
jmp 0x3040
popq %rbx
retq
nop