Browse Source

Changes for submission to OpenPOWER Systems SW Group.

pull/69/head
Bill Schmidt 3 years ago
parent
commit
5dd75e151c
  1. 13
      Intrinsics_Reference/bk_main.xml
  2. 22
      Intrinsics_Reference/ch_biendian.xml
  3. 8
      Intrinsics_Reference/ch_intro.xml
  4. 8
      Intrinsics_Reference/ch_techniques.xml
  5. 2300
      Intrinsics_Reference/ch_vec_reference.xml

13
Intrinsics_Reference/bk_main.xml

@ -54,7 +54,7 @@ @@ -54,7 +54,7 @@
<holder>OpenPOWER Foundation</holder>
</copyright>
<!-- TODO: Set the correct document releaseinfo -->
<releaseinfo>Revision 0.9.1</releaseinfo>
<releaseinfo>Revision 0.9.2</releaseinfo>
<productname>OpenPOWER</productname>
<pubdate/>

@ -87,6 +87,17 @@ @@ -87,6 +87,17 @@

<revhistory>
<!-- TODO: Set the initial version information and clear any old information out -->
<revision>
<date>2019-10-23</date>
<revdescription>
<itemizedlist spacing="compact">
<listitem>
<para>Version 0.9.2: Initial submission to OpenPOWER
Systems Software Workgroup.</para>
</listitem>
</itemizedlist>
</revdescription>
</revision>
<revision>
<date>2019-10-13</date>
<revdescription>

22
Intrinsics_Reference/ch_biendian.xml

@ -132,7 +132,13 @@ vector double g = (vector double) { 3.5, -24.6 };</programlisting> @@ -132,7 +132,13 @@ vector double g = (vector double) { 3.5, -24.6 };</programlisting>
languages), these data types may be accessed based on the type
names listed in <xref linkend="VIPR.biendian.vectypes" /> when
Power SIMD language extensions are enabled using either the
<code>vector</code> or <code>__vector</code> keywords.
<code>vector</code> or <code>__vector</code> keywords. Note
that the ELFv2 ABI for Power also includes a <code>vector
_Float16</code> data type. However, no Power compilers have yet
implemented such a type, and it is not clear that this will
change anytime soon. Thus this document has removed the
<code>vector _Float16</code> data type, and all intrinsics that
reference it.
</para>
<para>
For the Fortran language, <xref
@ -435,20 +441,6 @@ register vector double vd = vec_splats(*double_ptr);</programlisting> @@ -435,20 +441,6 @@ register vector double vd = vec_splats(*double_ptr);</programlisting>
<para>Vector of 1 signed quadword.</para>
</entry>
</row>
<row>
<entry>
<para>vector _Float16</para>
</entry>
<entry>
<para>16</para>
</entry>
<entry>
<para>Quadword</para>
</entry>
<entry>
<para>Vector of 8 half-precision floats.</para>
</entry>
</row>
<row>
<entry>
<para>vector float</para>

8
Intrinsics_Reference/ch_intro.xml

@ -277,6 +277,14 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="section_intro"> @@ -277,6 +277,14 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="section_intro">
</emphasis>
</para>
</listitem>
<listitem>
<para>
<emphasis>GCC's Assembler Syntax.</emphasis> Felix Cloutier.
<emphasis>
<link xlink:href="https://www.felixcloutier.com/documents/gcc-asm.html">https://www.felixcloutier.com/documents/gcc-asm.html</link>
</emphasis>
</para>
</listitem>
</itemizedlist>
</section>


8
Intrinsics_Reference/ch_techniques.xml

@ -173,7 +173,8 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="section_techniques"> @@ -173,7 +173,8 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="section_techniques">
your ideal performance. When that happens, the first thing you
should do is report this to the compiler community! This will
allow them to get the problem fixed in the next release of the
compiler.
compiler. See <xref linkend="VIPR.intro.reporting" /> if you
need to report an issue.
</para>
<para>
In the meanwhile, though, what are your options? As a
@ -192,8 +193,9 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="section_techniques"> @@ -192,8 +193,9 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="section_techniques">
best to look at existing examples to learn how to use it
properly. However, there is a good introduction to inline
assembly in <emphasis>Using the GNU Compiler
Collection</emphasis> (see <xref linkend="VIPR.intro.links" />),
in section 6.47 at the time of this writing.
Collection</emphasis>, in section 6.47 at the time of this
writing. Felix Cloutier has also written a very nice guide.
See <xref linkend="VIPR.intro.links" />.
</para>
<para>
If you write a function entirely in assembly, you are

2300
Intrinsics_Reference/ch_vec_reference.xml

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save