Skip to content

Support native AES on PPC64 in Go 1.14 #52

@aead

Description

@aead

What is the problem you want to solve?

Currently the sioutil.NativeAES() function always returns false on PPC64 - even if the CPU has AES hardware support. This behavior is correct at the moment since a PPC64 asm implementation has landed in Go (master) but hasn't been released yet. See: golang/go@904fdb3 | https://go-review.googlesource.com/c/go/+/191969

With the next Go release (1.14) we should "enable" native AES support on PPC - when available.

How do you want to solve it?

If we run on ppc64le we can simply return true since all PPC systems supported by Go seem to have AES hardware support.
As a safety check we may add require POWER8 of the cpu package to be true to ensure that AES hardware is available. See: https://www.ibm.com/developerworks/library/se-power8-in-core-cryptography/index.html

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions