Make ARMv8-M attribute cmse_nonsecure_call work in Ada

Unlike most other machine attributes, this one does not work in Ada because,
while it applies to pointer-to-function types, it is explicitly marked as
requiring declarations in the implementation.

Now, in Ada, machine attributes are specified like this:

  type Non_Secure is access procedure;
  pragma Machine_Attribute (Non_Secure, "cmse_nonsecure_call");

i.e. not attached to the declaration of Non_Secure.

The change extends the support to Ada by also accepting pointer-to-function
types in the handler.

gcc/
	* config/arm/arm.cc (arm_attribute_table) <cmse_nonsecure_call>:
	Change decl_required field to false.
	(arm_handle_cmse_nonsecure_call): Deal with a TYPE node.

gcc/testsuite/
	* gnat.dg/machine_attr2.ads, gnat.dg/machine_attr2.adb: New test.
3 files changed