Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(165)

Side by Side Diff: native_client_sdk/src/doc/reference/pnacl-bitcode-abi.rst

Issue 181573005: NaCl docs: update version information (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 ============================== 1 ==============================
2 PNaCl Bitcode Reference Manual 2 PNaCl Bitcode Reference Manual
3 ============================== 3 ==============================
4 4
5 .. contents:: 5 .. contents::
6 :local: 6 :local:
7 :backlinks: none 7 :backlinks: none
8 :depth: 3 8 :depth: 3
9 9
10 Introduction 10 Introduction
11 ============ 11 ============
12 12
13 This document is a reference manual for the PNaCl bitcode format. It describes 13 This document is a reference manual for the PNaCl bitcode format. It describes
14 the bitcode on a *semantic* level; the physical encoding level will be described 14 the bitcode on a *semantic* level; the physical encoding level will be described
15 elsewhere. For the purpose of this document, the textual form of LLVM IR is 15 elsewhere. For the purpose of this document, the textual form of LLVM IR is
16 used to describe instructions and other bitcode constructs. 16 used to describe instructions and other bitcode constructs.
17 17
18 Since the PNaCl bitcode is based to a large extent on LLVM IR, many sections 18 Since the PNaCl bitcode is based to a large extent on LLVM IR as of
19 in this document point to a relevant section of the LLVM language reference 19 version 3.3, many sections in this document point to a relevant section
20 manual. Only the changes, restrictions and variations specific to PNaCl are 20 of the LLVM language reference manual. Only the changes, restrictions
21 described---full semantic descriptions are not duplicated from the LLVM 21 and variations specific to PNaCl are described---full semantic
22 reference manual. 22 descriptions are not duplicated from the LLVM reference manual.
23 23
24 High Level Structure 24 High Level Structure
25 ==================== 25 ====================
26 26
27 A PNaCl portable executable (**pexe** in short) is a single LLVM IR module. 27 A PNaCl portable executable (**pexe** in short) is a single LLVM IR module.
28 28
29 Data Model 29 Data Model
30 ---------- 30 ----------
31 31
32 The data model for PNaCl bitcode is fixed at little-endian ILP32: pointers are 32 The data model for PNaCl bitcode is fixed at little-endian ILP32: pointers are
(...skipping 512 matching lines...) Expand 10 before | Expand all | Expand 10 after
545 545
546 declare i1 @llvm.nacl.atomic.is.lock.free(i32 <byte_size>, i8* <address>) 546 declare i1 @llvm.nacl.atomic.is.lock.free(i32 <byte_size>, i8* <address>)
547 547
548 The ``llvm.nacl.atomic.is.lock.free`` intrinsic is designed to 548 The ``llvm.nacl.atomic.is.lock.free`` intrinsic is designed to
549 determine at translation time whether atomic operations of a certain 549 determine at translation time whether atomic operations of a certain
550 ``byte_size`` (a compile-time constant), at a particular ``address``, 550 ``byte_size`` (a compile-time constant), at a particular ``address``,
551 are lock-free or not. This reflects the C11 ``atomic_is_lock_free`` 551 are lock-free or not. This reflects the C11 ``atomic_is_lock_free``
552 function from header ``<stdatomic.h>`` and the C++11 ``is_lock_free`` 552 function from header ``<stdatomic.h>`` and the C++11 ``is_lock_free``
553 member function in header ``<atomic>``. It can be used through the 553 member function in header ``<atomic>``. It can be used through the
554 ``__nacl_atomic_is_lock_free`` builtin. 554 ``__nacl_atomic_is_lock_free`` builtin.
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698