Unsupported C/C++ Constructs - 2021.2 English

Vitis High-Level Synthesis User Guide (UG1399)

Document ID
UG1399
ft:locale
English (United States)
Release Date
2021-12-15
Version
2021.2 English

While Vitis HLS supports a wide range of the C/C++ languages, some constructs are not synthesizable, or can result in errors further down the design flow. This section discusses areas in which coding changes must be made for the function to be synthesized and implemented in a device.

To be synthesized:

  • The function must contain the entire functionality of the design.
  • None of the functionality can be performed by system calls to the operating system.
  • The C/C++ constructs must be of a fixed or bounded size.
  • The implementation of those constructs must be unambiguous.