Using the GNU Compiler Collection (GCC): ARM ACLE Intrinsics

Next: ARM Floating Point Status and Control Intrinsics, Previous: ARM NEON Intrinsics, Up: Target Builtins [Contents][Index]

#### 6.57.9 ARM ACLE Intrinsics

#### 6.57.9.1 CRC32 intrinsics

These intrinsics are available when the CRC32 architecture extension is specified, e.g. when the `-march=armv8-a+crc` switch is used, or when the target processor specified with `-mcpu` supports it.

- uint32_t __crc32b (uint32_t, uint8_t)
  Form of expected instruction(s): `crc32b r0, r0, r0`

- uint32_t __crc32h (uint32_t, uint16_t)
  Form of expected instruction(s): `crc32h r0, r0, r0`

- uint32_t __crc32w (uint32_t, uint32_t)
  Form of expected instruction(s): `crc32w r0, r0, r0`

- uint32_t __crc32d (uint32_t, uint64_t)
  Form of expected instruction(s): Two `crc32w r0, r0, r0` instructions.

- uint32_t __crc32cb (uint32_t, uint8_t)
  Form of expected instruction(s): `crc32cb r0, r0, r0`

- uint32_t __crc32ch (uint32_t, uint16_t)
  Form of expected instruction(s): `crc32ch r0, r0, r0`

- uint32_t __crc32cw (uint32_t, uint32_t)
  Form of expected instruction(s): `crc32cw r0, r0, r0`

- uint32_t __crc32cd (uint32_t, uint64_t)
  Form of expected instruction(s): Two `crc32cw r0, r0, r0` instructions.