diff options
author | Joshua Haberman <jhaberman@gmail.com> | 2012-03-31 12:17:32 -0700 |
---|---|---|
committer | Joshua Haberman <jhaberman@gmail.com> | 2012-03-31 12:17:32 -0700 |
commit | cca4818eb7769d6e776bdc30516a5f871f1d6393 (patch) | |
tree | e67dd65d5c016028ae976b09b2d69f6b7525aa5f /upb/stdc/README | |
parent | 26ed1e996171c8ffa2ced42ac69b1b82c1956e1f (diff) |
Sync from internal Google development.
Diffstat (limited to 'upb/stdc/README')
-rw-r--r-- | upb/stdc/README | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/upb/stdc/README b/upb/stdc/README new file mode 100644 index 0000000..1815af4 --- /dev/null +++ b/upb/stdc/README @@ -0,0 +1,15 @@ +This directory contains code that is ANSI C but uses parts of the +standard library that are not available to very limited environments +like Linux Kernel modules. The standard calls environments like this +"freestanding implementations." + +This does *not* imply that the upb core can be compiled directly on a +freestanding implementation. Even the core uses library functions +that are not directly available on freestanding implementations +(notably malloc()/free(), vsnprintf(), and assert()). So compiling on +freestanding implementations may require implementing compatibility +versions of functions like malloc(). + +Also, Linux is not technically a freestanding implementation either, +since it does not accept functions that return float or double on +x86-64 (these use SSE registers which are disabled in kernel mode). |