• Robert Sprowson's avatar
    Define some extra platform feature flags · 96546b5a
    Robert Sprowson authored
    For disc based applications (ie. those that don't know the architecture at build time, like a ROM would) we have OS_PlatformFeatures to provide an abstract way of seeing when new chunks of instructions get added. Back at ARMv6 ARM deprecated SWP, but currently we have no way of knowing that at runtime without grubbing round the coprocessor registers.
    Add 3 new flags
    * One to say LDR/STREX is (not) available
    * One to say that SWP/SWPB is (not) available
    * One to say that CLREX and LDR/STREX[B|H|D] is (not) available
    shame it took a few goes for ARM to bring in these variants, requiring 3 flags not 1.
    
    Also:
    Condition the exception on vector read code on No32bitCode, rather than just having it permanently disabled.
    Improve the HAL device docs.
    
    Tested on a StrongARM Risc PC, Model B Pi, and Titanium.
    
    Version 5.35, 4.79.2.303. Tagged as 'Kernel-5_35-4_79_2_303'
    96546b5a
VersionASM 1.02 KB