Fix rank limits for various data layout operations

This commit removes the maximum rank 4 restriction
from REVERSE, SLICE and TILE operations so that the
new maximum is now MAX_RANK.

In doing so some rank inconsistencies were also
cleaned up, including:
* Adding a minimum rank to the PAD op description
* Adding level limit checks to SLICE and TILE ops
* Adding checks for rank(shape1) == rank(shape)
  for TILE and TRANSPOSE ops
* Add tensor_size(shape1) == tensor_size(shape)
  check for TRANSPOSE
* Replace tensor name with shape name in pesudo
  code where necessary

Change-Id: I94bb8ee0b6b720b2ba5a884ce9300dca6281245a
Signed-off-by: Luke Hutton <luke.hutton@arm.com>
2 files changed
tree: d293c4a6e72337b571e38cd2e4c44031ee49c5e6
  1. .gitignore
  2. .pre-commit-config.yaml
  3. Makefile
  4. README.md
  5. chapters/
  6. figures/
  7. tools/
  8. tosa.css
  9. tosa.xml
  10. tosa.xsd
  11. tosa_spec.adoc
README.md

TOSA Specification Repository

This repository contains the source files for the TOSA specification. See the specification itself for details on the purpose and definition of the specification.

Build requirements

The TOSA specification is written in asciidoc format, and has been built using the following tools:

  • Asciidoctor 1.5.5 or later (Asciidoctor)
  • Asciidoctor-pdf
  • GNU Make 4.1 or later
  • xmllint
  • Python 3.8 or later

The default make build creates both an html and a pdf version of the specification in out/html and out/pdf

If only an html build is required, make html will build only the html file, and asciidoctor-pdf is not needed.

If only a pdf build is required, make pdf will build only the pdf.