bullet3/Extras/simdmathlibrary
2007-08-21 03:41:42 +00:00
..
common applied patch to improve build system 2007-08-16 05:30:23 +00:00
ppu applied patch to improve build system 2007-08-16 05:30:23 +00:00
spu applied patch to improve build system 2007-08-16 05:30:23 +00:00
LICENSE removed C++ style comments from license file 2007-08-09 16:26:11 +00:00
Make.defs forgot to add Make.* files 2007-08-20 20:28:16 +00:00
Make.rules patch to allow building of SPU version 2007-08-21 03:41:42 +00:00
Make.test forgot to add Make.* files 2007-08-20 20:28:16 +00:00
Makefile applied patch to improve build system 2007-08-16 05:30:23 +00:00
README updated README with more details 2007-08-10 16:11:51 +00:00
simdmath.spec applied patch to improve build system 2007-08-16 05:30:23 +00:00

			  SIMD math library


* Overview

  The SIMD math library (SIMD math lib) is a SIMDized version of the
  C99 standard math library (libm).


* License

  This library is licensed under the terms in the file 'LICENSE' in
  this directory.


* Installing

  To install this library, run following commands:

  - 32 bit mode PowerPC with VMX

    $ make ARCH=ppu
    $ make ARCH=ppu install

  - 64 bit mode PowerPC with VMX

    $ make ARCH=ppu64
    $ make ARCH=ppu64 install

  - SPU (Cell Broadband Engine Synergistic Processor Unit)

    $ make ARCH=spu
    $ make ARCH=spu install

  The same library is created and installed for SPU regardless of
  PPU's mode.


  By default, files in the library will be placed as below:

  - libraries (except SPU library)

    /usr/lib/libsimdmath.a             (static library)
    /usr/lib/libsimdmath.so            (shared library)

  - headers (except SPU headers)

    /usr/lib/simdmath.h                 (main header)
    /usr/lib/simdmath/<FUNCTION>.h      (header of inline version)

  - SPU library

    /usr/spu/lib/libsimdmath.a (static library)
    (no shared library for SPU)

  - SPU headers

    /usr/spu/lib/simdmath.h             (main header)
    /usr/spu/lib/simdmath/<FUNCTION>.h  (header of inline version)


* Packaging

  By running following command in this directory, a source tarball
  'simdmath-<VERSION>.tar.gz' can be created:

    $ make dist
  
  You can also create RPM packages by executing the command below with
  the tarball:

    $ rpmbuild -tb simdmath-1.0.1.tar.gz --target=ppc

  Three packages, simdmath, simdmath-devel and spu-simdmath-devel,
  will be created.


* Quick start

  - Including headers

    You must include the header simdmat.h in your source code, as
    following:

    e.g.)

      #include <simdmath.h>

    If you want to use inlined version of the functions, you need to
    include simdmath/<FUNCTION>.h instead of simdmath.h:

    e.g.)

      #include <simdmath/sinf4.h>

  - Linking with library

    If you use non-inlined version of the library, you need to link
    the library libsimdmath.a or libsimdmath.so:

    e.g.)

      $ gcc -o foo foo.o -lsimdmath
      $ spu-gcc -o bar bar.o -lsimdmath

  - Function reference

    To obtain details about each function in this library, the
    specification document "SIMD Math Library Specification for Cell
    Broadband Engine Architecture" is avaiable at
    "http://cell.scei.co.jp/".

    Note that the name of each inlined version of function is prefixed
    by a character '_' against the corresponding non-inlined one.


* Contacting the project

  Module maintainer: Erwin Coumans

  Feedback and patches:
    http://www.bulletphysics.com/Bullet/phpBB2/viewforum.php?f=18

  Main repository URL:
    http://bullet.svn.sourceforge.net/viewvc/bullet/trunk/Extras/simdmathlibrary

---
EOF