Skip to content

Commit 568edbe

Browse files
committed
[NFC] Remove explicit bitcode enumeration from BitCodeFormat.rst
1 parent f865947 commit 568edbe

File tree

1 file changed

+20
-84
lines changed

1 file changed

+20
-84
lines changed

llvm/docs/BitCodeFormat.rst

Lines changed: 20 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -1006,93 +1006,29 @@ number of values representing the bytes of a null-terminated string. For
10061006
attributes with a string argument (code 4), the *value* value is similarly a
10071007
variable number of values representing the bytes of a null-terminated string.
10081008

1009-
The integer codes are mapped to well-known attributes as follows.
1009+
The integer codes are mapped to well-known attributes as described in the
1010+
enumeration in the file `LLVMBitCodes.h
1011+
<https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/Bitcode/LLVMBitCodes.h>`_.
1012+
1013+
For example:
1014+
1015+
::
1016+
1017+
enum AttributeKindCodes {
1018+
// = 0 is unused
1019+
ATTR_KIND_ALIGNMENT = 1,
1020+
ATTR_KIND_ALWAYS_INLINE = 2,
1021+
...
1022+
}
1023+
1024+
Correspond to:
10101025

10111026
* code 1: ``align(<n>)``
10121027
* code 2: ``alwaysinline``
1013-
* code 3: ``byval``
1014-
* code 4: ``inlinehint``
1015-
* code 5: ``inreg``
1016-
* code 6: ``minsize``
1017-
* code 7: ``naked``
1018-
* code 8: ``nest``
1019-
* code 9: ``noalias``
1020-
* code 10: ``nobuiltin``
1021-
* code 11: ``nocapture``
1022-
* code 12: ``nodeduplicate``
1023-
* code 13: ``noimplicitfloat``
1024-
* code 14: ``noinline``
1025-
* code 15: ``nonlazybind``
1026-
* code 16: ``noredzone``
1027-
* code 17: ``noreturn``
1028-
* code 18: ``nounwind``
1029-
* code 19: ``optsize``
1030-
* code 20: ``readnone``
1031-
* code 21: ``readonly``
1032-
* code 22: ``returned``
1033-
* code 23: ``returns_twice``
1034-
* code 24: ``signext``
1035-
* code 25: ``alignstack(<n>)``
1036-
* code 26: ``ssp``
1037-
* code 27: ``sspreq``
1038-
* code 28: ``sspstrong``
1039-
* code 29: ``sret``
1040-
* code 30: ``sanitize_address``
1041-
* code 31: ``sanitize_thread``
1042-
* code 32: ``sanitize_memory``
1043-
* code 33: ``uwtable``
1044-
* code 34: ``zeroext``
1045-
* code 35: ``builtin``
1046-
* code 36: ``cold``
1047-
* code 37: ``optnone``
1048-
* code 38: ``inalloca``
1049-
* code 39: ``nonnull``
1050-
* code 40: ``jumptable``
1051-
* code 41: ``dereferenceable(<n>)``
1052-
* code 42: ``dereferenceable_or_null(<n>)``
1053-
* code 43: ``convergent``
1054-
* code 44: ``safestack``
1055-
* code 45: ``argmemonly``
1056-
* code 46: ``swiftself``
1057-
* code 47: ``swifterror``
1058-
* code 48: ``norecurse``
1059-
* code 49: ``inaccessiblememonly``
1060-
* code 50: ``inaccessiblememonly_or_argmemonly``
1061-
* code 51: ``allocsize(<EltSizeParam>[, <NumEltsParam>])``
1062-
* code 52: ``writeonly``
1063-
* code 53: ``speculatable``
1064-
* code 54: ``strictfp``
1065-
* code 55: ``sanitize_hwaddress``
1066-
* code 56: ``nocf_check``
1067-
* code 57: ``optforfuzzing``
1068-
* code 58: ``shadowcallstack``
1069-
* code 59: ``speculative_load_hardening``
1070-
* code 60: ``immarg``
1071-
* code 61: ``willreturn``
1072-
* code 62: ``nofree``
1073-
* code 63: ``nosync``
1074-
* code 64: ``sanitize_memtag``
1075-
* code 65: ``preallocated``
1076-
* code 66: ``no_merge``
1077-
* code 67: ``null_pointer_is_valid``
1078-
* code 68: ``noundef``
1079-
* code 69: ``byref``
1080-
* code 70: ``mustprogress``
1081-
* code 74: ``vscale_range(<Min>[, <Max>])``
1082-
* code 75: ``swiftasync``
1083-
* code 76: ``nosanitize_coverage``
1084-
* code 77: ``elementtype``
1085-
* code 78: ``disable_sanitizer_instrumentation``
1086-
* code 79: ``nosanitize_bounds``
1087-
* code 80: ``allocalign``
1088-
* code 81: ``allocptr``
1089-
* code 82: ``allockind``
1090-
* code 83: ``presplitcoroutine``
1091-
* code 84: ``fn_ret_thunk_extern``
1092-
* code 85: ``skipprofile``
1093-
* code 86: ``memory``
1094-
* code 87: ``nofpclass``
1095-
* code 88: ``optdebug``
1028+
1029+
The mappings between the enumeration and the attribute name string may be found
1030+
in the file `Attributes.td
1031+
<https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/IR/Attributes.td>`_.
10961032

10971033
.. note::
10981034
The ``allocsize`` attribute has a special encoding for its arguments. Its two

0 commit comments

Comments
 (0)