{
  "$schema": "https://ambiqai.github.io/helia-ui/schema/reference-model-1.json",
  "generatedFrom": {
    "sourceCommit": "5f3fed9f21a57390cc7f00f77a37db8f5f110cb8",
    "tool": "doxyref",
    "version": "1.17.0"
  },
  "language": "c",
  "modules": [
    {
      "description": "",
      "name": "Quantization Functions:",
      "path": "heliaCORE.Quantization",
      "submodules": [],
      "summary": "",
      "symbols": [
        {
          "description": "Widen a float16 vector to float32.\n\nBit-exact widening of every input class: finite values, subnormals (normal in float32), +/-0 and +/-Inf convert exactly. No accumulation, no rounding. NaN behavior: on every leg a NaN stays a NaN with its sign, quiet bit and payload preserved bit-exactly (a signaling NaN stays signaling). The scalar leg widens on integer lanes and raises no floating-point exception flag. The MVE leg converts each 8-element block with the vector VCVT first and then rebuilds the NaN lanes from the half's bits (per 4-lane vector, 8 elements per main-loop block), so a signaling-NaN input may leave FPSCR.IOC (invalid operation, cumulative) set on that leg; no trap, and the result is the same bits. Input and output must not overlap. Serves the f16-weights DEQUANTIZE op (`kws_float_fp16_weights`).",
          "examples": [],
          "id": "arm_dequantize_f16_f32",
          "kind": "function",
          "language": "c",
          "members": [],
          "name": "arm_dequantize_f16_f32",
          "params": [
            {
              "description": "Pointer to the float16 input vector.",
              "direction": "in",
              "name": "input",
              "type": "const float16_t *"
            },
            {
              "description": "Pointer to the float32 output vector.",
              "direction": "out",
              "name": "output",
              "type": "float32_t *"
            },
            {
              "description": "Number of elements (0 is a no-op).",
              "direction": "in",
              "name": "block_size",
              "type": "int32_t"
            }
          ],
          "raises": [],
          "returns": [
            {
              "description": "`ARM_CMSIS_NN_SUCCESS`, or `ARM_CMSIS_NN_ARG_ERROR` when `block_size` is negative or a pointer is NULL with a non-zero `block_size`."
            }
          ],
          "signature": "arm_cmsis_nn_status arm_dequantize_f16_f32(const float16_t *input, float32_t *output, int32_t block_size)",
          "source": {
            "line": 2918,
            "path": "Include/arm_nnfunctions_flt.h",
            "url": "https://github.com/AmbiqAI/ns-cmsis-nn/blob/5f3fed9f21a57390cc7f00f77a37db8f5f110cb8/Include/arm_nnfunctions_flt.h#L2918"
          },
          "summary": "Widen a float16 vector to float32."
        }
      ]
    }
  ],
  "name": "heliaCORE"
}
