1,885
edits
Changes
→Week 12 - Class II
** If the basic operation of the program is good, bonus marks may be assigned for additional features and for overcoming the (permitted) limitations. See the project page for details.
</ol>
==== Build Targets ====
These are the build targets:
{|cellspacing="0" width="100%" cellpadding="5" border="1" style="background: #e0e0ff"
|-
!Name!!Abbreviation!!Typical GCC Target String!!Description
|-
|Advanced SIMD||asimd||armv8-a||Basic "Advanced SIMD" implementation present in all aarch64 systems. Fixed-length 128-bit SIMD implementation.
|-
|Scalable Vector Extensions||sve||armv8-a+sve||Original version of the Scalable Vector Extensions. Variable-length 128-to-2048 bit SIMD implementation with predicate registers and first-fault load/store operations.
|-
|Scalable Vector Extensions version 2||sve2||armv8-a+sve2 (also armv9-a)||New, expanded version of the Scalable Vector Extensions used in Arm architecture version 9 systems. Has the same implementation details as sve, but with many additional instructions, such as operations useful for digital signal processing (dsp).
|}
GCC target strings may be used:
* On the GCC command line, using the <code>-march=...</code> option
* In function attributes: <code>__attribute__(( target("...") ))</code>
* In pragmas: <code>#pragma GCC target "..."</code>
=== Week 12 Deliverables ===