mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-21 02:59:15 +00:00
A description of what this library is about, reference to the documentation
and a list of don'ts for the library. All so future maintainers don't break the important contract this library has with its user: LLVM. llvm-svn: 14979
This commit is contained in:
parent
f562d02a33
commit
5be5bc8453
23
lib/System/README.txt
Normal file
23
lib/System/README.txt
Normal file
@ -0,0 +1,23 @@
|
||||
System Utilities Interface
|
||||
==========================
|
||||
|
||||
The design of this library has several key constraints aimed at shielding LLVM
|
||||
from the vagaries of operating system differences. The goal here is to provide
|
||||
interfaces to operating system concepts (files, memory maps, sockets, signals,
|
||||
locking, etc) efficiently and in such a way that the remainder of LLVM is
|
||||
completely operating system agnostic.
|
||||
|
||||
PLEASE READ AND COMPREHEND FULLY THE DOCUMENTATION in
|
||||
|
||||
llvm/docs/SystemLibrary.html
|
||||
|
||||
before making changes to this library.
|
||||
|
||||
Briefly, the rules are:
|
||||
|
||||
1. This library may not expose no system-specific header files (STL excepted).
|
||||
2. This library may not allocate memory (directly).
|
||||
3. This library may not throw exceptions.
|
||||
4. This library may not use virtual methods in its classes.
|
||||
5. This library may not expose system specific types, data or functions through
|
||||
its interface
|
Loading…
Reference in New Issue
Block a user