• Home
  • History
  • Annotate
  • only in this directory
NameDateSize

..24-Oct-201420

Allocator.cppH A D24-Oct-20145.8 KiB

APFloat.cppH A D24-Oct-2014103.9 KiB

APInt.cppH A D24-Oct-201486.2 KiB

APSInt.cppH A D24-Oct-2014779

Atomic.cppH A D24-Oct-20142.9 KiB

BlockFrequency.cppH A D24-Oct-20143 KiB

BranchProbability.cppH A D24-Oct-2014982

circular_raw_ostream.cppH A D24-Oct-20141.3 KiB

CMakeLists.txtH A D24-Oct-20142 KiB

CommandLine.cppH A D24-Oct-201449.4 KiB

ConstantRange.cppH A D24-Oct-201424.2 KiB

COPYRIGHT.regexH A D24-Oct-20142.7 KiB

CrashRecoveryContext.cppH A D24-Oct-201410 KiB

DAGDeltaAlgorithm.cppH A D24-Oct-201412.7 KiB

DataExtractor.cppH A D24-Oct-20144.9 KiB

DataStream.cppH A D24-Oct-20142.9 KiB

Debug.cppH A D24-Oct-20144.6 KiB

DeltaAlgorithm.cppH A D24-Oct-20143.4 KiB

Disassembler.cppH A D24-Oct-20141.7 KiB

Dwarf.cppH A D24-Oct-201438.6 KiB

DynamicLibrary.cppH A D24-Oct-20144.9 KiB

Errno.cppH A D24-Oct-20142.2 KiB

ErrorHandling.cppH A D24-Oct-20143.2 KiB

FileOutputBuffer.cppH A D24-Oct-20144.5 KiB

FileUtilities.cppH A D24-Oct-20149.1 KiB

FoldingSet.cppH A D24-Oct-201414.3 KiB

FormattedStream.cppH A D24-Oct-20143.3 KiB

GraphWriter.cppH A D24-Oct-20145.5 KiB

Hashing.cppH A D24-Oct-20141.1 KiB

Host.cppH A D24-Oct-201417.7 KiB

IncludeFile.cppH A D24-Oct-2014707

IntEqClasses.cppH A D24-Oct-20142.1 KiB

IntervalMap.cppH A D24-Oct-20144.3 KiB

IntrusiveRefCntPtr.cppH A D24-Oct-2014445

IsInf.cppH A D24-Oct-20141.5 KiB

IsNAN.cppH A D24-Oct-2014914

LLVMBuild.txtH A D24-Oct-2014669

Locale.cppH A D24-Oct-2014203

LocaleGeneric.incH A D24-Oct-2014183

LocaleWindows.incH A D24-Oct-2014171

LocaleXlocale.incH A D24-Oct-20141.1 KiB

LockFileManager.cppH A D24-Oct-20146.2 KiB

MakefileH A D24-Oct-2014690

ManagedStatic.cppH A D24-Oct-20142.3 KiB

Memory.cppH A D24-Oct-2014802

MemoryBuffer.cppH A D24-Oct-201414.3 KiB

MemoryObject.cppH A D24-Oct-2014946

Mutex.cppH A D24-Oct-20143.4 KiB

Path.cppH A D24-Oct-20148.4 KiB

PathV2.cppH A D24-Oct-201424.1 KiB

PluginLoader.cppH A D24-Oct-20141.6 KiB

PrettyStackTrace.cppH A D24-Oct-20144.1 KiB

Process.cppH A D24-Oct-20141 KiB

Program.cppH A D24-Oct-20141.9 KiB

raw_os_ostream.cppH A D24-Oct-2014967

raw_ostream.cppH A D24-Oct-201422.7 KiB

README.txt.systemH A D24-Oct-20141.9 KiB

regcclass.hH A D24-Oct-20142.9 KiB

regcname.hH A D24-Oct-20144.2 KiB

regcomp.cH A D24-Oct-201434.8 KiB

regengine.incH A D24-Oct-201426.5 KiB

regerror.cH A D24-Oct-20144.4 KiB

Regex.cppH A D24-Oct-20144.6 KiB

regex2.hH A D24-Oct-20146.7 KiB

regex_impl.hH A D24-Oct-20143.6 KiB

regexec.cH A D24-Oct-20145.7 KiB

regfree.cH A D24-Oct-20142.5 KiB

regstrlcpy.cH A D24-Oct-20141.6 KiB

regutils.hH A D24-Oct-20142.2 KiB

RWMutex.cppH A D24-Oct-20143.2 KiB

SearchForAddressOfSpecialSymbol.cppH A D24-Oct-20141.7 KiB

Signals.cppH A D24-Oct-20141.1 KiB

SmallPtrSet.cppH A D24-Oct-20149.3 KiB

SmallVector.cppH A D24-Oct-20141.5 KiB

SourceMgr.cppH A D24-Oct-201411.4 KiB

Statistic.cppH A D24-Oct-20144.7 KiB

StreamableMemoryObject.cppH A D24-Oct-20144.7 KiB

StringExtras.cppH A D24-Oct-20142.3 KiB

StringMap.cppH A D24-Oct-20148.3 KiB

StringPool.cppH A D24-Oct-2014997

StringRef.cppH A D24-Oct-201413.5 KiB

system_error.cppH A D24-Oct-20142.9 KiB

SystemUtils.cppH A D24-Oct-20142.2 KiB

TargetRegistry.cppH A D24-Oct-20145.2 KiB

Threading.cppH A D24-Oct-20144 KiB

ThreadLocal.cppH A D24-Oct-20142.7 KiB

Timer.cppH A D24-Oct-201411.9 KiB

TimeValue.cppH A D24-Oct-20141.7 KiB

ToolOutputFile.cppH A D24-Oct-20141.5 KiB

Triple.cppH A D24-Oct-201425.3 KiB

Twine.cppH A D24-Oct-20144.1 KiB

Unix/H24-Oct-201416

Valgrind.cppH A D24-Oct-20142.1 KiB

Windows/H24-Oct-201417

YAMLParser.cppH A D24-Oct-201458.7 KiB

README.txt.system

1Design Of lib/System
2====================
3
4The software in this directory is designed to completely shield LLVM from any
5and all operating system specific functionality. It is not intended to be a
6complete operating system wrapper (such as ACE), but only to provide the
7functionality necessary to support LLVM.
8
9The software located here, of necessity, has very specific and stringent design
10rules. Violation of these rules means that cracks in the shield could form and
11the primary goal of the library is defeated. By consistently using this library,
12LLVM becomes more easily ported to new platforms since the only thing requiring
13porting is this library.
14
15Complete documentation for the library can be found in the file:
16  llvm/docs/SystemLibrary.html
17or at this URL:
18  http://llvm.org/docs/SystemLibrary.html
19
20While we recommend that you read the more detailed documentation, for the
21impatient, here's a high level summary of the library's requirements.
22
23 1. No system header files are to be exposed through the interface.
24 2. Std C++ and Std C header files are okay to be exposed through the interface.
25 3. No exposed system-specific functions.
26 4. No exposed system-specific data.
27 5. Data in lib/System classes must use only simple C++ intrinsic types.
28 6. Errors are handled by returning "true" and setting an optional std::string
29 7. Library must not throw any exceptions, period.
30 8. Interface functions must not have throw() specifications.
31 9. No duplicate function impementations are permitted within an operating
32    system class.
33
34To accomplish these requirements, the library has numerous design criteria that
35must be satisfied. Here's a high level summary of the library's design criteria:
36
37 1. No unused functionality (only what LLVM needs)
38 2. High-Level Interfaces
39 3. Use Opaque Classes
40 4. Common Implementations
41 5. Multiple Implementations
42 6. Minimize Memory Allocation
43 7. No Virtual Methods
44