xref: /freebsd/contrib/llvm-project/llvm/lib/Support/RISCVAttributes.cpp (revision 0fca6ea1d4eea4c934cfff25ac9ee8ad6fe95583)
15ffd83dbSDimitry Andric //===-- RISCVAttributes.cpp - RISCV Attributes ----------------------------===//
25ffd83dbSDimitry Andric //
35ffd83dbSDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
45ffd83dbSDimitry Andric // See https://llvm.org/LICENSE.txt for license information.
55ffd83dbSDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
65ffd83dbSDimitry Andric //
75ffd83dbSDimitry Andric //===----------------------------------------------------------------------===//
85ffd83dbSDimitry Andric 
95ffd83dbSDimitry Andric #include "llvm/Support/RISCVAttributes.h"
105ffd83dbSDimitry Andric 
115ffd83dbSDimitry Andric using namespace llvm;
125ffd83dbSDimitry Andric using namespace llvm::RISCVAttrs;
135ffd83dbSDimitry Andric 
14fe6060f1SDimitry Andric static constexpr TagNameItem tagData[] = {
155ffd83dbSDimitry Andric     {STACK_ALIGN, "Tag_stack_align"},
165ffd83dbSDimitry Andric     {ARCH, "Tag_arch"},
175ffd83dbSDimitry Andric     {UNALIGNED_ACCESS, "Tag_unaligned_access"},
185ffd83dbSDimitry Andric     {PRIV_SPEC, "Tag_priv_spec"},
195ffd83dbSDimitry Andric     {PRIV_SPEC_MINOR, "Tag_priv_spec_minor"},
205ffd83dbSDimitry Andric     {PRIV_SPEC_REVISION, "Tag_priv_spec_revision"},
21*0fca6ea1SDimitry Andric     {ATOMIC_ABI, "Tag_atomic_abi"},
225ffd83dbSDimitry Andric };
235ffd83dbSDimitry Andric 
24fe6060f1SDimitry Andric constexpr TagNameMap RISCVAttributeTags{tagData};
getRISCVAttributeTags()25fe6060f1SDimitry Andric const TagNameMap &llvm::RISCVAttrs::getRISCVAttributeTags() {
26fe6060f1SDimitry Andric   return RISCVAttributeTags;
27fe6060f1SDimitry Andric }
28