1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 03:23:01 +02:00
llvm-mirror/lib
Johannes Doerfert f0f6b46554 [OpenMP][Part 1] Reusable OpenMP context/traits handling
This is the first of multiple parts to make OpenMP context/trait
handling reusable and generic. This patch was originally part of D71830
but with the unit tests it can be tested independently.

This patch implements an almost complete handling of OpenMP
contexts/traits such that we can reuse most of the logic in Flang
through the OMPContext.{h,cpp} in llvm/Frontend/OpenMP.

All but construct SIMD specifiers, e.g., inbranch, and the device ISA
selector are define in llvm/lib/Frontend/OpenMP/OMPKinds.def. From
these definitions we generate the enum classes TraitSet,
TraitSelector, and TraitProperty as well as conversion and helper
functions in llvm/lib/Frontend/OpenMP/OMPContext.{h,cpp}.

The OpenMP context is now an explicit object (see `struct OMPContext`).
This is in anticipation of construct traits that need to be tracked. The
OpenMP context, as well as the VariantMatchInfo, are basically made up
of a set of active or respectively required traits, e.g., 'host', and an
ordered container of constructs which allows duplication. Matching and
scoring is kept as generic as possible to allow easy extension in the
future.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D71847
2020-02-02 23:18:25 -06:00
..
Analysis [Analysis] add optional index parameter to isSplatValue() 2020-02-02 10:52:00 -05:00
AsmParser Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
BinaryFormat DWARFDebugLine.cpp: Format unknown line number standard opcodes 2020-01-15 10:45:50 -05:00
Bitcode Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
Bitstream [Bitstream] Delete skipAbbreviatedField which duplicates readAbbreviatedField 2019-12-25 18:55:02 -08:00
CodeGen [CodeGenPrepare] Delete dead !DL check 2020-02-02 09:49:06 -08:00
DebugInfo DebugInfo: Allow dumping macinfo and macinfo.dwo from the same file 2020-01-31 12:47:50 -08:00
Demangle Revert "Add some missing includes to MicrosoftDemangle.cpp (PR44217)" 2019-12-04 11:10:07 -08:00
DWARFLinker Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
ExecutionEngine Make StringRef's std::string conversion operator explicit 2020-02-01 15:43:45 +01:00
Frontend [OpenMP][Part 1] Reusable OpenMP context/traits handling 2020-02-02 23:18:25 -06:00
Fuzzer
FuzzMutate Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
IR Build assume from call 2020-02-02 19:43:36 +01:00
IRReader [cmake] Explicitly mark libraries defined in lib/ as "Component Libraries" 2019-11-21 10:48:08 -08:00
LineEditor Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
Linker [NFC] Fixes -Wrange-loop-analysis warnings 2020-01-01 20:01:37 +01:00
LTO [llvm] Replace SmallStr.str().str() with std::string conversion operator. 2020-01-29 21:16:46 -08:00
MC [XCOFF][AIX] Support basic relocation type on AIX 2020-01-30 15:59:09 +00:00
MCA Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
Object [XCOFF][AIX] Support basic relocation type on AIX 2020-01-30 15:59:09 +00:00
ObjectYAML [yaml2obj] - Add a way to set sh_entsize for relocation sections. 2020-01-30 14:51:33 +03:00
Option Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
Passes Build assume from call 2020-02-02 19:43:36 +01:00
ProfileData [llvm] Replace SmallStr.str().str() with std::string conversion operator. 2020-01-29 21:16:46 -08:00
Remarks Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
Support [Support] Don't modify the current EH context during stack unwinding 2020-01-31 17:04:01 -08:00
TableGen A bunch more implicit string conversions that my Clang didn't detect. 2020-01-29 00:30:16 +01:00
Target [NFC] Fix helptext for opt/llc after https://reviews.llvm.org/D68411 2020-02-03 12:31:42 +08:00
Testing
TextAPI Another round of GCC5 fixes. 2020-01-29 02:09:24 +01:00
ToolDrivers [llvm] Replace SmallStr.str().str() with std::string conversion operator. 2020-01-29 21:16:46 -08:00
Transforms Build assume from call 2020-02-02 19:43:36 +01:00
WindowsManifest Revert "Temporarily revert "build: avoid hardcoding the libxml2 library name"" 2019-12-03 09:27:14 -08:00
XRay Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
CMakeLists.txt [Dsymutil][Debuginfo][NFC] Reland: Refactor dsymutil to separate DWARF optimizing part. #2. 2020-01-08 14:15:31 +03:00
LLVMBuild.txt [Dsymutil][Debuginfo][NFC] Reland: Refactor dsymutil to separate DWARF optimizing part. #2. 2020-01-08 14:15:31 +03:00