1
0
Fork 0
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hmz007 6d24f2138b
Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56)
3 years ago
..
Unix Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Windows Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
APFloat.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
APInt.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
APSInt.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ARMBuildAttrs.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ARMWinEH.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Allocator.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Android.bp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Atomic.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
BlockFrequency.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
BranchProbability.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CMakeLists.txt Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
COM.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
COPYRIGHT.regex Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CachePruning.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CommandLine.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Compression.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ConvertUTF.c Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ConvertUTFWrapper.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CrashRecoveryContext.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DAGDeltaAlgorithm.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DataExtractor.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DataStream.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Debug.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DeltaAlgorithm.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Dwarf.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DynamicLibrary.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Errno.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Error.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ErrorHandling.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
FileOutputBuffer.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
FileUtilities.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
FoldingSet.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
FormattedStream.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
GraphWriter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Hashing.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Host.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
IntEqClasses.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
IntervalMap.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
IntrusiveRefCntPtr.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
JamCRC.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LEB128.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LLVMBuild.txt Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LineIterator.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Locale.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LockFileManager.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MD5.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ManagedStatic.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MathExtras.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Memory.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MemoryBuffer.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MemoryObject.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Mutex.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Options.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Path.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
PluginLoader.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
PrettyStackTrace.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Process.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Program.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
README.txt.system Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
RWMutex.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
RandomNumberGenerator.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Regex.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
SHA1.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ScaledNumber.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ScopedPrinter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
SearchForAddressOfSpecialSymbol.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Signals.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
SmallPtrSet.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
SmallVector.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
SourceMgr.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
SpecialCaseList.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Statistic.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
StreamingMemoryObject.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
StringExtras.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
StringMap.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
StringPool.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
StringRef.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
StringSaver.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
SystemUtils.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
TargetParser.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
TargetRegistry.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ThreadLocal.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ThreadPool.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Threading.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
TimeValue.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Timer.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ToolOutputFile.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Triple.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Twine.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Unicode.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Valgrind.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Watchdog.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
YAMLParser.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
YAMLTraits.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
circular_raw_ostream.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
raw_os_ostream.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
raw_ostream.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regcclass.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regcname.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regcomp.c Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regengine.inc Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regerror.c Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regex2.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regex_impl.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regexec.c Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regfree.c Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regstrlcpy.c Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
regutils.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago

README.txt.system

Design Of lib/System
====================

The software in this directory is designed to completely shield LLVM from any
and all operating system specific functionality. It is not intended to be a
complete operating system wrapper (such as ACE), but only to provide the
functionality necessary to support LLVM.

The software located here, of necessity, has very specific and stringent design
rules. Violation of these rules means that cracks in the shield could form and
the primary goal of the library is defeated. By consistently using this library,
LLVM becomes more easily ported to new platforms since the only thing requiring
porting is this library.

Complete documentation for the library can be found in the file:
  llvm/docs/SystemLibrary.html
or at this URL:
  http://llvm.org/docs/SystemLibrary.html

While we recommend that you read the more detailed documentation, for the
impatient, here's a high level summary of the library's requirements.

 1. No system header files are to be exposed through the interface.
 2. Std C++ and Std C header files are okay to be exposed through the interface.
 3. No exposed system-specific functions.
 4. No exposed system-specific data.
 5. Data in lib/System classes must use only simple C++ intrinsic types.
 6. Errors are handled by returning "true" and setting an optional std::string
 7. Library must not throw any exceptions, period.
 8. Interface functions must not have throw() specifications.
 9. No duplicate function impementations are permitted within an operating
    system class.

To accomplish these requirements, the library has numerous design criteria that
must be satisfied. Here's a high level summary of the library's design criteria:

 1. No unused functionality (only what LLVM needs)
 2. High-Level Interfaces
 3. Use Opaque Classes
 4. Common Implementations
 5. Multiple Implementations
 6. Minimize Memory Allocation
 7. No Virtual Methods