spm: enable pointer authentication and BTI

Use romlib in tbb/dualroot secure boot configurations. The debug build
is bigger when PAuth+BTI is enabled and BL2/BL31 no longer fit Trusted
SRAM. Update related run configs such that they call the rom lib shell
functions.
Update to arch version v8.5 in run configs such that BTI can be enabled.
Add has_branch_target_exception=1 to run configs such that BTI is
enabled.
Add restriction_on_speculative_execution option to base-aemva-common.sh.
Add restriction_on_speculative_execution=2 to run configs such that
SCXTNUM_ELx registers are supported in the EL2 context switch routine.

Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Change-Id: Ib9f9996fd4d4d6e7b5975a5f7b64760169b76a6a
diff --git a/run_config/fvp-spm b/run_config/fvp-spm
index c87641e..cb0a5ec 100644
--- a/run_config/fvp-spm
+++ b/run_config/fvp-spm
@@ -24,8 +24,14 @@
 	# SPM(reference implementation of S-EL2 firmware) has SMMUv3 driver
 	# enabled to help with stage-2 translation and virtualization of
 	# upstream peripheral devices. Hence, enable the SMMUv3 IP in FVP
-	# by confuguring the appropriate parameters of the SMMUv3 AEM.
-	model="$model" arch_version="8.4" has_smmuv3_params="1" gen_model_params
+	# by configuring the appropriate parameters of the SMMUv3 AEM.
+
+	model="$model" \
+	arch_version="8.5" \
+	has_smmuv3_params="1" \
+	has_branch_target_exception="1" \
+	restriction_on_speculative_execution="2" \
+		gen_model_params
 
 	model="$model" gen_fvp_yaml
 }