// File: binding.cpp
#include "rms_norm.h"

namespace {
constexpr int64_t kD   = 2048;
constexpr float   kEps = 1e-6f;   // matches the Definition reference
} // namespace

extern "C" {
// inputs: [0]=x fp32 [M,D], [1]=weight fp32 [D]; var_axes: [0]=M
int armbench_entry_rms_norm(const void* const* inputs, void* output,
                            const int64_t* var_axes)
{
    return armbench_llamacpp_rms_norm(
        inputs[0],
        inputs[1],
        reinterpret_cast<float*>(output),
        var_axes[0], kD, kEps);
}
} // extern "C"