14.06.2015 Views

Power ISA™ Version 2.03 - Power.org

Power ISA™ Version 2.03 - Power.org

Power ISA™ Version 2.03 - Power.org

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Version</strong> <strong>2.03</strong><br />

Form<br />

Opcode<br />

Pri<br />

Ext<br />

Mode<br />

Dep. 1<br />

Priv 1<br />

Page Cat 1 Mnemonic Instruction<br />

D 36 47 B stw Store Word<br />

D 37 47 B stwu Store Word with Update<br />

D 38 45 B stb Store Byte<br />

D 39 45 B stbu Store Byte with Update<br />

D 40 40 B lhz Load Halfword and Zero<br />

D 41 40 B lhzu Load Halfword and Zero with Update<br />

D 42 41 B lha Load Halfword Algebraic<br />

D 43 41 B lhau Load Halfword Algebraic with Update<br />

D 44 46 B sth Store Halfword<br />

D 45 46 B sthu Store Halfword with Update<br />

D 46 50 B lmw Load Multiple Word<br />

D 47 50 B stmw Store Multiple Word<br />

D 48 110 FP lfs Load Floating-Point Single<br />

D 49 110 FP lfsu Load Floating-Point Single with Update<br />

D 50 108 FP lfd Load Floating-Point Double<br />

D 51 108 FP lfdu Load Floating-Point Double with Update<br />

D 52 110 FP stfs Store Floating-Point Single<br />

D 53 110 FP stfsu Store Floating-Point Single with Update<br />

D 54 111 FP stfd Store Floating-Point Double<br />

D 55 111 FP stfdu Store Floating-Point Double with Update<br />

DQ 56 P 400 LSQ lq Load Quadword<br />

DS 58 0 44 64 ld Load Doubleword<br />

DS 58 1 44 64 ldu Load Doubleword with Update<br />

DS 58 2 43 64 lwa Load Word Algebraic<br />

A 59 18 115 FP[R] fdivs[.] Floating Divide Single<br />

A 59 20 114 FP[R] fsubs[.] Floating Subtract Single<br />

A 59 21 114 FP[R] fadds[.] Floating Add Single<br />

A 59 22 116 FP[R] fsqrts[.] Floating Square Root Single<br />

A 59 24 116 FP[R] fres[.] Floating Reciprocal Estimate Single<br />

A 59 25 115 FP[R] fmuls[.] Floating Multiply Single<br />

A 59 26 117 FP[R] frsqrtes[.] Floating Reciprocal Square Root Estimate Single<br />

A 59 28 118 FP[R] fmsubs[.] Floating Multiply-Subtract Single<br />

A 59 29 118 FP[R] fmadds[.] Floating Multiply-Add Single<br />

A 59 30 119 FP[R] fnmsubs[.] Floating Negative Multiply-Subtract Single<br />

A 59 31 119 FP[R] fnmadds[.] Floating Negative Multiply-Add Single<br />

DS 62 0 48 64 std Store Doubleword<br />

DS 62 1 48 64 stdu Store Doubleword with Update<br />

DS 62 2 P 400 LSQ stq Store Quadword<br />

X 63 0 124 FP fcmpu Floating Compare Unordered<br />

X 63 12 120 FP[R] frsp[.] Floating Round to Single-Precision<br />

X 63 14 121 FP[R] fctiw[.] Floating Convert To Integer Word<br />

X 63 15 122 FP[R] fctiwz[.] Floating Convert To Integer Word with round toward Zero<br />

A 63 18 115 FP[R] fdiv[.] Floating Divide<br />

A 63 20 114 FP[R] fsub[.] Floating Subtract<br />

A 63 21 114 FP[R] fadd[.] Floating Add<br />

A 63 22 116 FP[R] fsqrt[.] Floating Square Root<br />

A 63 23 125 FP[R] fsel[.] Floating Select<br />

A 63 24 116 FP[R] fre[.] Floating Reciprocal Estimate<br />

A 63 25 115 FP[R] fmul[.] Floating Multiply<br />

A 63 26 117 FP[R] frsqrte[.] Floating Reciprocal Square Root Estimate<br />

A 63 28 118 FP[R] fmsub[.] Floating Multiply-Subtract<br />

A 63 29 118 FP[R] fmadd[.] Floating Multiply-Add<br />

A 63 30 119 FP[R] fnmsub[.] Floating Negative Multiply-Subtract<br />

A 63 31 119 FP[R] fnmadd[.] Floating Negative Multiply-Add<br />

X 63 32 124 FP fcmpo Floating Compare Ordered<br />

X 63 38 127 FP[R] mtfsb1[.] Move To FPSCR Bit 1<br />

X 63 40 113 FP[R] fneg[.] Floating Negate<br />

X 63 64 126 FP mcrfs Move to Condition Register from FPSCR<br />

X 63 70 127 FP[R] mtfsb0[.] Move To FPSCR Bit 0<br />

X 63 72 113 FP[R] fmr[.] Floating Move Register<br />

X 63 134 126 FP[R] mtfsfi[.] Move To FPSCR Field Immediate<br />

Appendix H. <strong>Power</strong> ISA Instruction Set Sorted by Opcode<br />

797

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!