|Home > Iris APIs > Memory > Errors|
Reading and writing memory can fail for various reasons, including data aborts, translation errors, unsupported
byteWidth, and reading past the end of the memory space.
Such errors do not cause the
function to return an error status, which would prevent them from returning
meaningful return values, but instead are reported in the
error member of the
MemoryWriteResult return value.
Reads and writes specify a start address, an access width per element
byteWidth), and a number of elements (
count). The start address must be within the range
supported by the memory space, in other words between
maxAddr of the memory
E_address_out_of_range is returned.
However, the end address can be beyond the end of the memory space. In other words,
is not required to be within
maxAddr. Reads and writes must return an error in the
error member of the result for all elements that exceed
the memory space address range.
Target instances that do not expose any memory must return
E_function_not_supported_by_instance for the