as: RISC-V-ATTRIBUTE

 
 9.37.4 RISC-V Object Attribute
 ------------------------------
 
 RISC-V attributes have a string value if the tag number is odd and an
 integer value if the tag number is even.
 
 Tag_RISCV_stack_align (4)
      Tag_RISCV_strict_align records the N-byte stack alignment for this
      object.  The default value is 16 for RV32I or RV64I, and 4 for
      RV32E.
 
      The smallest value will be used if object files with different
      Tag_RISCV_stack_align values are merged.
 
 Tag_RISCV_arch (5)
      Tag_RISCV_arch contains a string for the target architecture taken
      from the option '-march'.  Different architectures will be
      integrated into a superset when object files are merged.
 
      Note that the version information of the target architecture must
      be presented explicitly in the attribute and abbreviations must be
      expanded.  The version information, if not given by '-march', must
      be in accordance with the default specified by the tool.  For
      example, the architecture 'RV32I' has to be recorded in the
      attribute as 'RV32I2P0' in which '2P0' stands for the default
      version of its base ISA. On the other hand, the architecture
      'RV32G' has to be presented as 'RV32I2P0_M2P0_A2P0_F2P0_D2P0' in
      which the abbreviation 'G' is expanded to the 'IMAFD' combination
      with default versions of the standard extensions.
 
 Tag_RISCV_unaligned_access (6)
      Tag_RISCV_unaligned_access is 0 for files that do not allow any
      unaligned memory accesses, and 1 for files that do allow unaligned
      memory accesses.
 
 Tag_RISCV_priv_spec (8)
 Tag_RISCV_priv_spec_minor (10)
 Tag_RISCV_priv_spec_revision (12)
      Tag_RISCV_priv_spec contains the major/minor/revision version
      information of the privileged specification.  It will report errors
      if object files of different privileged specification versions are
      merged.