throbber

`
`
`
`
`
`ALTIVECPEM/D
`11/1998
`Rev. 0
`
`AltiVec Technology
`Programming Environments Manual
`
`“
`
`“
`
`SAMSUNG-1009
`Page 1 of 350
`
`

`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`AltiVec is a trademark of Motorola, Inc.
`DigitalDNA is a trademark of Motorola, Inc.
`The PowerPC name and the PowerPC logotype are trademarks of International Business Machines Corporation used by Motorola under license from
`International Business Machines Corporation.
`Mfax is a trademark of Motorola, Inc.
`
`This document contains information on a new product under development. Motorola reserves the right to change or discontinue this product without notice.
`Information in this document is provided solely to enable system and software implementers to use PowerPC microprocessors. There are no express or
`implied copyright licenses granted hereunder to design or fabricate PowerPC integrated circuits or integrated circuits based on the information in this
`document.
`Motorola reserves the right to make changes without further notice to any products herein. Motorola makes no warranty, representation or guarantee
`regarding the suitability of its products for any particular purpose, nor does Motorola assume any liability arising out of the application or use of any product
`or circuit, and speci(cid:222)cally disclaims any and all liability, including without limitation consequential or incidental damages. (cid:210)Typical(cid:211) parameters can and do
`vary in different applications. All operating parameters, including (cid:210)Typicals(cid:211) must be validated for each customer application by customer(cid:213)s technical
`experts. Motorola does not convey any license under its patent rights nor the rights of others. Motorola products are not designed, intended, or authorized
`for use as components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other
`application in which the failure of the Motorola product could create a situation where personal injury or death may occur. Should Buyer purchase or use
`Motorola products for any such unintended or unauthorized application, Buyer shall indemnify and hold Motorola and its of(cid:222)cers, employees, subsidiaries,
`af(cid:222)liates, and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly,
`any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that Motorola was negligent
`regarding the design or manufacture of the part. Motorola and
` are registered trademarks of Motorola, Inc. Motorola, Inc. is an Equal Opportunity/
`Af(cid:222)rmative Action Employer.
`
`Motorola Literature Distribution Centers:
`
`
`USA/EUROPE: Motorola Literature Distribution; P.O. Box 5405; Denver, Colorado 80217; Tel.: 1-800-441-2447 or 1-303-675-2140/
`JAPAN
`: Nippon Motorola Ltd SPD, Strategic Planning Of(cid:222)ce 4-32-1, Nishi-Gotanda Shinagawa-ku, Tokyo 141, Japan Tel.: 81-3-5487-8488
`
`ASIA/PACIFC: Motorola Semiconductors H.K. Ltd.; 8B Tai Ping Industrial Park, 51 Ting Kok Road, Tai Po, N.T., Hong Kong; Tel.: 852-26629298
`
`Mfax“
`: RMFAX0@email.sps.mot.com; TOUCHTONE 1-602-244-6609; US & Canada ONLY (800) 774-1848;
`
`World Wide Web Address: http://sps.motorola.com/mfax
`
`INTERNET: http://motorola.com/sps
`
`Technical Information: Motorola Inc. SPS Customer Support Center 1-800-521-6274; electronic mail address: crc@wmkmail.sps.mot.com.
`
`Document Comments
`: FAX (512) 895-2638, Attn: RISC Applications Engineering.
`
`World Wide Web Addresses: http://www.mot.com/PowerPC
`http://www.mot.com/netcomm
`
`' Motorola Inc. 1998. All rights reserved.
`
`SAMSUNG-1009
`Page 2 of 350
`
`

`

`1 2 3 4 5 6
`
`Overview
`
`AltiVec Register Set
`
`Operand Conventions
`
`Addressing Modes and Instruction Set Summary
`
`Cache, Exceptions, and Memory Management
`
`AltiVec Instructions
`
`AltiVec Instruction Set Listings
`
`A
`
`Glossary of Terms and Abbreviations
`
`GLO
`
`Index
`
`IND
`
`
`
`
`
`
`
`
`SAMSUNG-1009
`Page 3 of 350
`
`

`

`Overview
`
`AltiVec Register Set
`
`Operand Conventions
`
`Addressing Modes and Instruction Set Summary
`
`Cache, Exceptions, and Memory Management
`
`AltiVec Instructions
`
`A
`
`AltiVec Instruction Set Listings
`
`1 2 3 4 5 6
`
`
`
`
`
`
`
`
`GLO
`
`Glossary of Terms and Abbreviations
`
`IND
`
`Index
`
`SAMSUNG-1009
`Page 4 of 350
`
`

`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Paragraph
`Number
`
`CONTENTS
`
`Title
`
`About This Book
`
`Page
`Number
`
`Audience ................................................................................................................xx
`Organization...........................................................................................................xx
`Suggested Reading............................................................................................... xxi
`General Information............................................................................................ xxi
`PowerPC Documentation................................................................................... xxii
`Conventions ....................................................................................................... xxiv
`Acronyms and Abbreviations ..............................................................................xxv
`Terminology Conventions ................................................................................ xxvii
`
`Chapter 1
`Overview
`
`1.1
`1.1.1
`1.1.2
`1.1.3
`1.2
`1.2.1
`1.2.2
`1.2.2.1
`1.2.2.2
`1.2.3
`1.2.4
`1.2.5
`1.2.6
`1.2.7
`
`Overview.............................................................................................................. 1-2
`The 64-Bit AltiVec Technology and the 32-Bit Subset................................... 1-5
`The Levels of the AltiVec ISA ........................................................................ 1-5
`Features Not Defined by the AltiVec ISA ....................................................... 1-6
`The AltiVec Architectural Model ........................................................................ 1-6
`AltiVec Registers and Programming Model.................................................... 1-7
`Operand Conventions ...................................................................................... 1-7
`Byte Ordering .............................................................................................. 1-7
`Floating-Point Conventions ......................................................................... 1-8
`AltiVec Addressing Modes.............................................................................. 1-9
`AltiVec Instruction Set .................................................................................. 1-10
`AltiVec Cache Model ................................................................................... 1-11
`AltiVec Exception Model .............................................................................. 1-11
`Memory Management Model ........................................................................ 1-12
`
`Chapter 2
`AltiVec Register Set
`
`2.1
`2.1.1
`2.1.2
`
`AltiVec Register File (VRF)................................................................................ 2-1
`The Vector Status and Control Register (VSCR) ............................................ 2-2
`VRSAVE Register (VRSAVE) ....................................................................... 2-4
`
`MOTOROLA
`
`
`
`Contents
`
`v
`
`SAMSUNG-1009
`Page 5 of 350
`
`

`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Paragraph
`Number
`
`2.1.3
`2.1.4
`2.1.5
`2.1.5.1
`2.1.5.2
`2.2
`
`3.1
`3.1.1
`3.1.2
`3.1.2.1
`3.1.2.2
`3.1.3
`3.1.4
`3.1.5
`3.1.6
`3.1.6.1
`3.1.6.2
`3.1.6.3
`3.1.6.4
`3.1.7
`3.2
`3.2.1
`3.2.1.1
`3.2.1.2
`3.2.2
`3.2.3
`3.2.4
`3.2.4.1
`3.2.4.2
`3.2.4.3
`3.2.4.4
`3.2.4.5
`3.2.4.6
`3.2.5
`3.2.5.1
`3.2.5.2
`3.2.5.3
`3.2.5.4
`3.2.5.5
`
`CONTENTS
`
`Title
`
`Page
`Number
`
`PowerPC Condition Register ........................................................................... 2-5
`AltiVec Bit in the PowerPC Machine State Register (MSR) .......................... 2-5
`Machine Status Save/Restore Registers (SRR) ............................................... 2-7
`Machine Status Save/Restore Register 0 (SRR0)........................................ 2-7
`Machine Status Save/Restore Register 1 (SRR1)........................................ 2-8
`PowerPC Register Set .......................................................................................... 2-8
`
`Chapter 3
`Operand Conventions
`
`Data Organization in Memory ............................................................................. 3-1
`Aligned and Misaligned Accesses ................................................................... 3-1
`AltiVec Byte Ordering..................................................................................... 3-2
`Big-Endian Byte Ordering........................................................................... 3-3
`Little-Endian Byte Ordering ........................................................................ 3-3
`Quad Word Byte Ordering Example ............................................................... 3-3
`Aligned Scalars in Little-Endian Mode ........................................................... 3-4
`Vector Register and Memory Access Alignment ............................................ 3-6
`Quad-Word Data Alignment............................................................................ 3-7
`Accessing a Misaligned Quad Word in Big-Endian Mode ......................... 3-8
`Accessing a Misaligned Quad Word in Little-Endian Mode..................... 3-10
`Scalar Loads and Stores............................................................................. 3-11
`Misaligned Scalar Loads and Stores.......................................................... 3-11
`Mixed-Endian Systems .................................................................................. 3-11
`AltiVec Floating-Point Instructions(cid:209)UISA...................................................... 3-12
`Floating-Point Modes .................................................................................... 3-12
`Java Mode.................................................................................................. 3-13
`Non-Java Mode.......................................................................................... 3-13
`Floating-Point Infinities................................................................................. 3-14
`Floating-Point Rounding................................................................................ 3-14
`Floating-Point Exceptions.............................................................................. 3-14
`NaN Operand Exception............................................................................ 3-14
`Invalid Operation Exception...................................................................... 3-15
`Zero Divide Exception............................................................................... 3-15
`Log of Zero Exception............................................................................... 3-16
`Overflow Exception................................................................................... 3-16
`Underflow Exception................................................................................. 3-16
`Floating-Point NaNs ...................................................................................... 3-17
`NaN Precedence......................................................................................... 3-17
`SNaN Arithmetic ....................................................................................... 3-17
`QNaN Arithmetic....................................................................................... 3-17
`NaN Conversion to Integer........................................................................ 3-17
`NaN Production ......................................................................................... 3-17
`
`vi
`
`AltiVec Technology Programming Environments Manual
`
`MOTOROLA
`
`SAMSUNG-1009
`Page 6 of 350
`
`

`

`
`
`
`
`
`
`
`
`
`
`
`Paragraph
`Number
`
`CONTENTS
`
`Title
`
`Page
`Number
`
`Chapter 4
`Addressing Modes and Instruction Set Summary
`
`Conventions ......................................................................................................... 4-2
`Execution Model.............................................................................................. 4-2
`Computation Modes......................................................................................... 4-2
`Classes of Instructions ..................................................................................... 4-3
`Memory Addressing ........................................................................................ 4-3
`Memory Operands ....................................................................................... 4-3
`Effective Address Calculation ..................................................................... 4-3
`AltiVec UISA Instructions................................................................................... 4-4
`Vector Integer Instructions .............................................................................. 4-4
`Saturation Detection .................................................................................... 4-4
`Vector Integer Arithmetic Instructions........................................................ 4-5
`Vector Integer Compare Instructions......................................................... 4-13
`Vector Integer Logical Instructions ........................................................... 4-15
`Vector Integer Rotate and Shift Instructions ............................................. 4-16
`Vector Floating-Point Instructions................................................................. 4-17
`Floating-Point Division and Square-Root ................................................. 4-17
`Floating-Point Division ......................................................................... 4-18
`Floating-Point Square-Root................................................................... 4-18
`Floating-Point Arithmetic Instructions ...................................................... 4-19
`Floating-Point Multiply-Add Instructions ................................................. 4-19
`Floating-Point Rounding and Conversion Instructions ............................. 4-20
`Floating-Point Compare Instructions......................................................... 4-21
`Floating-Point Estimate Instructions ......................................................... 4-24
`Load and Store Instructions ........................................................................... 4-24
`Alignment .................................................................................................. 4-25
`Load and Store Address Generation .......................................................... 4-25
`Vector Load Instructions ........................................................................... 4-26
`Vector Store Instructions ........................................................................... 4-30
`Control Flow .................................................................................................. 4-30
`Vector Permutation and Formatting Instructions........................................... 4-30
`Vector Pack Instructions............................................................................ 4-31
`Vector Unpack Instructions ....................................................................... 4-32
`Vector Merge Instructions ......................................................................... 4-33
`Vector Splat Instructions ........................................................................... 4-34
`Vector Permute Instructions ...................................................................... 4-35
`Vector Select Instruction ........................................................................... 4-35
`Vector Shift Instructions............................................................................ 4-36
`Immediate Interelement Shifts/Rotates.................................................. 4-36
`Computed Interelement Shifts/Rotates.................................................. 4-37
`Variable Interelement Shifts .................................................................. 4-37
`
`4.1
`4.1.1
`4.1.2
`4.1.3
`4.1.4
`4.1.4.1
`4.1.4.2
`4.2
`4.2.1
`4.2.1.1
`4.2.1.2
`4.2.1.3
`4.2.1.4
`4.2.1.5
`4.2.2
`4.2.2.1
`4.2.2.1.1
`4.2.2.1.2
`4.2.2.2
`4.2.2.3
`4.2.2.4
`4.2.2.5
`4.2.2.6
`4.2.3
`4.2.3.1
`4.2.3.2
`4.2.3.3
`4.2.3.4
`4.2.4
`4.2.5
`4.2.5.1
`4.2.5.2
`4.2.5.3
`4.2.5.4
`4.2.5.5
`4.2.5.6
`4.2.5.7
`4.2.5.7.1
`4.2.5.7.2
`4.2.5.7.3
`
`MOTOROLA
`
`
`
`Contents
`
`vii
`
`SAMSUNG-1009
`Page 7 of 350
`
`

`

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Paragraph
`Number
`
`CONTENTS
`
`Title
`
`Page
`Number
`
`4.2.6
`4.2.6.1
`4.2.7
`4.3
`4.3.1
`4.3.2
`
`5.1
`5.1.1
`5.2
`5.2.1
`5.2.1.1
`5.2.1.2
`5.2.1.3
`5.2.1.4
`5.2.1.5
`5.2.1.6
`5.2.1.7
`5.2.1.8
`5.2.1.9
`5.2.2
`5.2.3
`5.3
`5.4
`
`6.1
`6.1.1
`6.1.2
`6.2
`
`A.1
`A.2
`A.3
`A.4
`
`viii
`
`Processor Control Instructions(cid:209)UISA ......................................................... 4-38
`AltiVec Status and Control Register Instructions...................................... 4-38
`Recommended Simplified Mnemonics.......................................................... 4-39
`AltiVec VEA Instructions.................................................................................. 4-39
`Memory Control Instructions(cid:209)VEA ............................................................ 4-39
`User-Level Cache Instructions(cid:209)VEA .......................................................... 4-40
`
`Chapter 5
`Cache, Exceptions, and Memory Management
`
`PowerPC Shared Memory.................................................................................... 5-1
`PowerPC Memory Access Ordering................................................................ 5-1
`AltiVec Memory Bandwidth Management.......................................................... 5-3
`Software-Directed Prefetch.............................................................................. 5-3
`Data Stream Touch (dst).............................................................................. 5-3
`Transient Streams (dstt)............................................................................... 5-5
`Storing to Streams (dstst)............................................................................. 5-5
`Stopping Streams (dss) ................................................................................ 5-6
`Exception Behavior of Prefetch Streams..................................................... 5-7
`Synchronization Behavior of Streams ......................................................... 5-8
`Address Translation for Streams ................................................................. 5-8
`Stream Usage Notes..................................................................................... 5-8
`Stream Implementation Assumptions........................................................ 5-10
`Prioritizing Cache Block Replacement.......................................................... 5-10
`Partially Executed AltiVec Instructions ........................................................ 5-11
`DSI Exception(cid:209)Data Address Breakpoint ....................................................... 5-11
`AltiVec Unavailable Exception (0x00F20) ....................................................... 5-11
`
`Chapter 6
`AltiVec Instructions
`
`Instruction Formats .............................................................................................. 6-1
`Instruction Fields ............................................................................................. 6-2
`Notation and Conventions ............................................................................... 6-2
`AltiVec Instruction Set ........................................................................................ 6-8
`
`Appendix A
`AltiVec Instruction Set Listings
`
`Instructions Sorted by Mnemonic....................................................................... A-1
`Instructions Sorted by Opcode............................................................................ A-7
`Instructions Sorted by Form.............................................................................. A-12
`Instruction Set Legend ...................................................................................... A-18
`
`AltiVec Technology Programming Environments Manual
`
`MOTOROLA
`
`SAMSUNG-1009
`Page 8 of 350
`
`

`

`
`
`
`
`
`
`
`
`
`
`ILLUSTRATIONS
`
`Figure
`Number
`
`Title
`
` Page
` Number
`
` 1-1
` 1-2
` 1-3
` 1-4
` 1-5
` 2-1
` 2-2
` 2-3
` 2-4
` 2-5
` 2-6
` 2-7
` 2-8
` 2-9
` 2-10
` 3-1
` 3-2
` 3-3
` 3-4
` 3-5
` 3-6
` 3-8
` 3-7
` 3-9
` 4-1
` 5-1
` 5-2
` 6-1
` 6-2
` 6-3
` 6-4
` 6-5
` 6-6
` 6-7
` 6-8
` 6-9
`
`High Level Structural Overview of PowerPC with AltiVec Technology................... 1-3
`AltiVec Top-Level Diagram ....................................................................................... 1-7
`Big-Endian Byte Ordering for a Vector Register ....................................................... 1-8
`Intraelement Example, vaddsws ................................................................................. 1-9
`Interelement Example, vperm..................................................................................... 1-9
`AltiVec Register File .................................................................................................. 2-2
`Vector Status and Control Register (VSCR) .............................................................. 2-2
`VSCR Moved to a Vector Register............................................................................. 2-3
`Saving/Restoring the AltiVec Context Register (VRSAVE)...................................... 2-4
`Condition Register (CR) ............................................................................................. 2-5
`Machine State Register (MSR)(cid:209)64-Bit Implementation........................................... 2-6
`Machine State Register (MSR)(cid:209)32-Bit Implementation........................................... 2-6
`Machine Status Save/Restore Register 0 (SRR0) ....................................................... 2-8
`Machine Status Save/Restore Register 1 (SRR1) ....................................................... 2-8
`Programming Model(cid:209)All Registers .......................................................................... 2-9
`Big-Endian Mapping of a Quad Word........................................................................ 3-3
`Little-Endian Mapping of a Quad Word..................................................................... 3-4
`Little-Endian Mapping of Quad Word(cid:209)Alternate View ........................................... 3-4
`Quad Word Load with Munged Little-Endian Applied.............................................. 3-5
`AltiVec Little Endian Swap ........................................................................................ 3-6
`Misaligned Vector in Big-Endian Mode..................................................................... 3-7
`Big-Endian Quad Word Alignment ............................................................................ 3-8
`Misaligned Vector in Little-Endian Addressing Mode............................................... 3-8
`Little-Endian Alignment ........................................................................................... 3-10
`Register Indirect with Index Addressing for Loads/Stores....................................... 4-26
`Format of rB in dst Instruction.................................................................................... 5-3
`Data Stream Touch ..................................................................................................... 5-4
`Format of rB in dst instruction (32-bit)..................................................................... 6-11
`Format of rB in dst instruction (64-bit)..................................................................... 6-11
`Format of rB in dst instruction (32-Bit).................................................................... 6-13
`Format of rB in dst instruction (64-Bit).................................................................... 6-13
`Effects of Example Load/Store Instructions ............................................................. 6-15
`Load Vector for Shift Left ........................................................................................ 6-19
`Instruction vperm Used in Aligning Data................................................................. 6-19
`vaddcuw(cid:209)Determine Carries of Four Unsigned Integer Adds (32-Bit).................. 6-31
`vaddfp(cid:209)Add Four Floating-Point Elements (32-Bit) .............................................. 6-32
`
`MOTOROLA
`
`Illustrations
`
`ix
`
`SAMSUNG-1009
`Page 9 of 350
`
`

`

`
`
`
`
`
`
`
`
`
`
`ILLUSTRATIONS
`
`Figure
`Number
` 6-10
` 6-11
` 6-12
` 6-13
` 6-14
` 6-15
` 6-16
` 6-17
` 6-18
` 6-19
` 6-20
` 6-21
` 6-22
` 6-23
` 6-24
` 6-25
` 6-26
` 6-27
`
` 6-28
`
` 6-29
` 6-30
` 6-31
` 6-32
` 6-33
` 6-34
`
` 6-35
` 6-36
` 6-37
` 6-38
` 6-39
` 6-40
` 6-41
` 6-42
`
` 6-43
`
` 6-44
`
` 6-45
`
`Title
`
`Page
`Number
`vaddsbs(cid:209) Add Saturating Sixteen Signed Integer Elements (8-Bit) ....................... 6-33
`vaddshs(cid:209) Add Saturating Eight Signed Integer Elements (16-Bit) ........................ 6-34
`vaddsws(cid:209)Add Saturating Four Signed Integer Elements (32-Bit).......................... 6-35
`vaddubm(cid:209)Add Sixteen Integer Elements (8-Bit).................................................... 6-36
`vaddubs(cid:209)Add Saturating Sixteen Unsigned Integer Elements (8-Bit) ................... 6-37
`vadduhm(cid:209)Add Eight Integer Elements (16-Bit) ..................................................... 6-38
`vadduhs(cid:209)Add Saturating Eight Unsigned Integer Elements (16-Bit)..................... 6-39
`vadduwm(cid:209)Add Four Integer Elements (32-Bit) ..................................................... 6-40
`vadduws(cid:209)Add Saturating Four Unsigned Integer Elements (32-Bit) ..................... 6-41
`vand(cid:209)Logical Bitwise AND.................................................................................... 6-42
`vand(cid:209)Logical Bitwise AND with Complement...................................................... 6-43
`vavgsb(cid:209) Average Sixteen Signed Integer Elements (8-Bit) ................................... 6-44
`vavgsh(cid:209)Average Eight Signed Integer Elements (16-bits)..................................... 6-45
`vavgsw(cid:209) Average Four Signed Integer Elements (32-Bit) ..................................... 6-46
`vavgub(cid:209)Average Sixteen Unsigned Integer Elements (8-bits)............................... 6-47
`vavgsh(cid:209) Average Eight Signed Integer Elements (16-Bit)..................................... 6-48
`vavguw(cid:209)Average Four Unsigned Integer Elements (32-Bit) ................................. 6-49
`vcfsx(cid:209)Convert Four Signed Integer Elements to Four Floating-Point
`Elements (32-Bit)............................................................................................... 6-50
`vcfux(cid:209)Convert Four Unsigned Integer Elements to Four Floating-Point
`Elements (32-Bit)............................................................................................... 6-51
`vcmpbfp(cid:209)Compare Bounds of Four Floating-Point Elements (32-Bit).................. 6-53
`vcmpeqfp(cid:209)Compare Equal of Four Floating-Point Elements (32-Bit)................... 6-54
`vcmpequb(cid:209)Compare Equal of Sixteen Integer Elements (8-bits)........................... 6-55
`vcmpequh(cid:209)Compare Equal of Eight Integer Elements (16-Bit)............................. 6-56
`vcmpequw(cid:209)Compare Equal of Four Integer Elements (32-Bit) ............................. 6-57
`vcmpgefp(cid:209)Compare Greater-Than-or-Equal of Four Floating-Point
`Elements (32-Bit)............................................................................................... 6-58
`vcmpgtfp(cid:209)Compare Greater-Than of Four Floating-Point Elements (32-Bit) ....... 6-59
`vcmpgtsb(cid:209)Compare Greater-Than of Sixteen Signed Integer Elements (8-Bit) .... 6-60
`vcmpgtsh(cid:209)Compare Greater-Than of Eight Signed Integer Elements (16-Bit)...... 6-61
`vcmpgtsw(cid:209)Compare Greater-Than of Four Signed Integer Elements (32-Bit)...... 6-62
`vcmpgtub(cid:209)Compare Greater-Than of Sixteen Unsigned Integer Elements (8-Bit) 6-63
`vcmpgtuh(cid:209)Compare Greater-Than of Eight Unsigned Integer Elements (16-Bit) . 6-64
`vcmpgtuw(cid:209)Compare Greater-Than of Four Unsigned Integer Elements (32-Bit) . 6-65
`vctsxs(cid:209)Convert Four Floating-Point Elements to Four Signed Integer
`Elements (32-Bit)............................................................................................... 6-66
`vctuxs(cid:209)Convert Four Floating-Point Elements to Four Unsigned Integer
`Elements (32-Bit)............................................................................................... 6-67
`vexptefp(cid:209)2 Raised to the Exponent Estimate Floating-Point for Four
`Floating-Point Elements (32-Bit)....................................................................... 6-69
`vexptefp(cid:209)Log2 Estimate Floating-Point for Four Floating-Point
`Elements (32-Bit)............................................................................................... 6-71
`
`x
`
`AltiVec Technology Programming Environments Manual
`
`MOTOROLA
`
`SAMSUNG-1009
`Page 10 of 350
`
`

`

`
`
`
`
`
`
`
`
`
`
`Figure
`Number
`
`ILLUSTRATIONS
`
`Title
`
`Page
`Number
`
` 6-46
` 6-47
` 6-48
` 6-49
` 6-50
` 6-51
` 6-52
` 6-53
` 6-54
` 6-55
`
` 6-56
` 6-57
` 6-58
` 6-59
` 6-60
` 6-61
` 6-62
` 6-63
` 6-64
` 6-65
` 6-66
` 6-67
` 6-68
` 6-69
` 6-70
` 6-71
`
` 6-72
` 6-73
`
` 6-74
`
` 6-75
`
` 6-76
` 6-77
` 6-78
` 6-79
` 6-80
` 6-81
` 6-82
` 6-83
`
`vmaddfp(cid:209)Multiply-Add Four Floating-Point Elements (32-Bit)............................ 6-72
`vmaxfp(cid:209)Maximum of Four Floating-Point Elements (32-Bit)............................... 6-73
`vmaxsb(cid:209)Maximum of Sixteen Signed Integer Elements (8-Bit)............................ 6-74
`vmaxsh(cid:209)Maximum of Eight Signed Integer Elements (16-Bit) ............................. 6-75
`vmaxsw(cid:209)Maximum of Four Signed Integer Elements (32-Bit) ............................. 6-76
`vmaxub(cid:209)Maximum of Sixteen Unsigned Integer Elements (8-Bit) ....................... 6-77
`vmaxuh(cid:209)Maximum of Eight Unsigned Integer Elements (16-Bit)......................... 6-78
`vmaxuw(cid:209)Maximum of Four Unsigned Integer Elements (32-Bit)......................... 6-79
`vmhaddshs(cid:209)Multiply-High and Add Eight Signed Integer Elements (16-Bit)....... 6-80
`vmhraddshs(cid:209)Multiply-High Round and Add Eight Signed Integer
`Elements (16-Bit)............................................................................................... 6-81
`vminfp(cid:209)Minimum of Four Floating-Point Elements (32-Bit) ................................ 6-82
`vminsb(cid:209)Minimum of Sixteen Signed Integer Elements (8-Bit) ............................. 6-83
`vminsh(cid:209)Minimum of Eight Signed Integer Elements (16-Bit)............................... 6-84
`vminsw(cid:209)Minimum of Four Signed Integer Elements (32-Bit)............................... 6-85
`vminub(cid:209)Minimum of Sixteen Unsigned Integer Elements (8-Bit)......................... 6-86
`vminuh(cid:209)Minimum of Eight Unsigned Integer Elements (16-Bit).......................... 6-87
`vminuw(cid:209)Minimum of Four Unsigned Integer Elements (32-Bit) .......................... 6-88
`vmladduhm(cid:209)Multiply-Add of Eight Integer Elements (16-Bit) ............................. 6-89
`vmrghb(cid:209)Merge Eight High-Order Elements (8-Bit)............................................... 6-90
`vmrghh(cid:209)Merge Four High-Order Elements (16-Bit).............................................. 6-91
`vmrghw(cid:209)Merge Four High-Order Elements (32-Bit)............................................. 6-92
`vmrglb(cid:209)Merge Eight Low-Order Elements (8-Bit) ................................................ 6-93
`vmrglh(cid:209)Merge Four Low-Order Elements (16-Bit) ............................................... 6-94
`vmrglw(cid:209)Merge Four Low-Order Elements (32-Bit) .............................................. 6-95
`vmsummbm(cid:209)Multiply-Sum of Integer Elements (8-Bit to 32-Bit) ........................ 6-96
`vmsumshm(cid:209)Multiply-Sum of Signed Integer Elements
`(16-Bit to 32-Bit) ............................................................................................... 6-97
`vmsumshs(cid:209)Multiply-Sum of Signed Integer Elements (16-Bit to 32-Bit) ............. 6-98
`vmsumubm(cid:209)Multiply-Sum of Unsigned Integer Elements
`(8-Bit to 32-Bit) .................................................................

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket