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

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

Issue 938673003: [NaClDocs] Add documentation for the PNaCl fabs intrinsic. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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
« no previous file with comments | « native_client_sdk/doc_generated/reference/pnacl-bitcode-abi.html ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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
(...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after
423 423
424 * ``llvm.bswap`` 424 * ``llvm.bswap``
425 425
426 The overloaded ``llvm.bswap`` intrinsic is only supported with the following 426 The overloaded ``llvm.bswap`` intrinsic is only supported with the following
427 argument types: i16, i32, i64 (the types supported by C-style GCC builtins). 427 argument types: i16, i32, i64 (the types supported by C-style GCC builtins).
428 428
429 * ``llvm.ctlz`` 429 * ``llvm.ctlz``
430 * ``llvm.cttz`` 430 * ``llvm.cttz``
431 * ``llvm.ctpop`` 431 * ``llvm.ctpop``
432 432
433 The overloaded llvm.ctlz, llvm.cttz, and llvm.ctpop intrinsics are only 433 The overloaded ``llvm.ctlz``, ``llvm.cttz``, and ``llvm.ctpop`` intrinsics
434 supported with the i32 and i64 argument types (the types supported by 434 are only supported with the i32 and i64 argument types (the types
435 C-style GCC builtins). 435 supported by C-style GCC builtins).
436
437 * ``llvm.fabs``
438
439 The overloaded ``llvm.fabs`` intrinsic is supported for float, double and
440 ``<4 x float>`` argument types. It returns the absolute value of
441 the argument. Some notable points: it returns ``+0.0`` when given ``-0.0``,
442 ``+inf`` when given ``-inf``, and a positive ``NaN`` when given any
443 signed ``NaN``.
444
445 NOTE: This intrinsic was introduced in the pepper_42 SDK.
436 446
437 * ``llvm.sqrt`` 447 * ``llvm.sqrt``
438 448
439 The overloaded ``llvm.sqrt`` intrinsic is only supported for float 449 The overloaded ``llvm.sqrt`` intrinsic is only supported for float
440 and double arguments types. This has the same semantics as the libc 450 and double arguments types. This has the same semantics as the libc
441 sqrt function, returning NaN for values less than -0.0. However, this 451 sqrt function, returning ``NaN`` for values less than ``-0.0``.
442 does not set ``errno`` when the result is NaN (see the 452 However, this does not set ``errno`` when the result is NaN (see the
443 :ref:`instructions and errno <ir_and_errno>` section). 453 :ref:`instructions and errno <ir_and_errno>` section).
444 454
445 * ``llvm.stacksave`` 455 * ``llvm.stacksave``
446 * ``llvm.stackrestore`` 456 * ``llvm.stackrestore``
447 457
448 These intrinsics are used to implement language features like scoped automatic 458 These intrinsics are used to implement language features like scoped automatic
449 variable sized arrays in C99. ``llvm.stacksave`` returns a value that 459 variable sized arrays in C99. ``llvm.stacksave`` returns a value that
450 represents the current state of the stack. This value may only be used as the 460 represents the current state of the stack. This value may only be used as the
451 argument to ``llvm.stackrestore``, which restores the stack to the given 461 argument to ``llvm.stackrestore``, which restores the stack to the given
452 state. 462 state.
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
567 577
568 declare i1 @llvm.nacl.atomic.is.lock.free(i32 <byte_size>, i8* <address>) 578 declare i1 @llvm.nacl.atomic.is.lock.free(i32 <byte_size>, i8* <address>)
569 579
570 The ``llvm.nacl.atomic.is.lock.free`` intrinsic is designed to 580 The ``llvm.nacl.atomic.is.lock.free`` intrinsic is designed to
571 determine at translation time whether atomic operations of a certain 581 determine at translation time whether atomic operations of a certain
572 ``byte_size`` (a compile-time constant), at a particular ``address``, 582 ``byte_size`` (a compile-time constant), at a particular ``address``,
573 are lock-free or not. This reflects the C11 ``atomic_is_lock_free`` 583 are lock-free or not. This reflects the C11 ``atomic_is_lock_free``
574 function from header ``<stdatomic.h>`` and the C++11 ``is_lock_free`` 584 function from header ``<stdatomic.h>`` and the C++11 ``is_lock_free``
575 member function in header ``<atomic>``. It can be used through the 585 member function in header ``<atomic>``. It can be used through the
576 ``__nacl_atomic_is_lock_free`` builtin. 586 ``__nacl_atomic_is_lock_free`` builtin.
OLDNEW
« no previous file with comments | « native_client_sdk/doc_generated/reference/pnacl-bitcode-abi.html ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698