Inject an exception into EL1 instead of panicking for unsupported MSRs

When accessing an unsupported, undefined, or deliberately blocked system
register, inject an exception into the EL1 of the VM instead of panicking.

Exception Class (EC) 0x0 is used, because it applies to accessing a system
register that is either not allocated or not permitted. See Arm Architecture
Reference Manual Armv8-A, page D13-2924.

Added a basic unit test for this, which I plan to expand to ensure that other
protected system registers inject exceptions.

Bug: 140916188
Change-Id: Idaf3c420bdd5a4b5e1d77000c6f850476dc3acc6
diff --git a/test/hftest/standalone_main.c b/test/hftest/standalone_main.c
index f42c71b..193623c 100644
--- a/test/hftest/standalone_main.c
+++ b/test/hftest/standalone_main.c
@@ -51,7 +51,7 @@
 	 * Install the exception handler with no IRQ callback for now, so that
 	 * exceptions are logged.
 	 */
-	exception_setup(NULL);
+	exception_setup(NULL, NULL);
 
 	hftest_use_list(hftest_begin, hftest_end - hftest_begin);