@@ -536,53 +536,53 @@ ILP32, ILP32F, ILP32D, and ILP32E:: Use the following type sizes and
536536alignments (based on the ILP32 convention):
537537+
538538.C/{Cpp} type sizes and alignments for RV32
539- [cols="4,>2,>3"]
539+ [cols="4,>2,>3,4 "]
540540[width=60%]
541541|===
542- | Type | Size (Bytes) | Alignment (Bytes)
543-
544- | bool/_Bool | 1 | 1
545- | char | 1 | 1
546- | short | 2 | 2
547- | int | 4 | 4
548- | long | 4 | 4
549- | long long | 8 | 8
550- | void * | 4 | 4
551- | +++__bf16+++ | 2 | 2
552- | _Float16 | 2 | 2
553- | float | 4 | 4
554- | double | 8 | 8
555- | long double | 16 | 16
556- | float _Complex | 8 | 4
557- | double _Complex | 16 | 8
558- | long double _Complex | 32 | 16
542+ | Type | Size (Bytes) | Alignment (Bytes) | Note
543+
544+ | bool/_Bool | 1 | 1 |
545+ | char | 1 | 1 |
546+ | short | 2 | 2 |
547+ | int | 4 | 4 |
548+ | long | 4 | 4 |
549+ | long long | 8 | 8 |
550+ | void * | 4 | 4 |
551+ | +++__bf16+++ | 2 | 2 | Half precision floating point (bfloat16)
552+ | _Float16 | 2 | 2 | Half precision floating point (binary16 in IEEE 754-2008)
553+ | float | 4 | 4 | Single precision floating point (binary32 in IEEE 754-2008)
554+ | double | 8 | 8 | Double precision floating point (binary64 in IEEE 754-2008)
555+ | long double | 16 | 16 | Quadruple precision floating point (binary128 in IEEE 754-2008)
556+ | float _Complex | 8 | 4 |
557+ | double _Complex | 16 | 8 |
558+ | long double _Complex | 32 | 16 |
559559|===
560560
561561LP64, LP64F, LP64D, and LP64Q:: Use the following type sizes and
562562alignments (based on the LP64 convention):
563563+
564564.C/{Cpp} type sizes and alignments for RV64
565- [cols="4,>2,>3"]
565+ [cols="4,>2,>3,4 "]
566566[width=60%]
567567|===
568- | Type | Size (Bytes) | Alignment (Bytes)
569-
570- | bool/_Bool | 1 | 1
571- | char | 1 | 1
572- | short | 2 | 2
573- | int | 4 | 4
574- | long | 8 | 8
575- | long long | 8 | 8
576- | +++__int128+++ | 16 | 16
577- | void * | 8 | 8
578- | +++__bf16+++ | 2 | 2
579- | _Float16 | 2 | 2
580- | float | 4 | 4
581- | double | 8 | 8
582- | long double | 16 | 16
583- | float _Complex | 8 | 4
584- | double _Complex | 16 | 8
585- | long double _Complex | 32 | 16
568+ | Type | Size (Bytes) | Alignment (Bytes) | Note
569+
570+ | bool/_Bool | 1 | 1 |
571+ | char | 1 | 1 |
572+ | short | 2 | 2 |
573+ | int | 4 | 4 |
574+ | long | 8 | 8 |
575+ | long long | 8 | 8 |
576+ | +++__int128+++ | 16 | 16 |
577+ | void * | 8 | 8 |
578+ | +++__bf16+++ | 2 | 2 | Half precision floating point (bfloat16)
579+ | _Float16 | 2 | 2 | Half precision floating point (binary16 in IEEE 754-2008)
580+ | float | 4 | 4 | Single precision floating point (binary32 in IEEE 754-2008)
581+ | double | 8 | 8 | Double precision floating point (binary64 in IEEE 754-2008)
582+ | long double | 16 | 16 | Quadruple precision floating point (binary128 in IEEE 754-2008)
583+ | float _Complex | 8 | 4 |
584+ | double _Complex | 16 | 8 |
585+ | long double _Complex | 32 | 16 |
586586|===
587587
588588The alignment of `max_align_t` is 16.
0 commit comments