#### 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.