blob: 1b1687b2a204b6a04476c1eab0ae69fe446a0926 [file] [log] [blame]
# RUN: llvm-mc --disassemble %s -triple=x86_64 | FileCheck %s
# RUN: llvm-mc --disassemble %s -triple=i686-apple-darwin9 | FileCheck %s
# CHECK: fadd %st(0), %st
0xd8,0xc0
# CHECK: fadd %st(1), %st
0xd8,0xc1
# CHECK: fadd %st(2), %st
0xd8,0xc2
# CHECK: fadd %st(3), %st
0xd8,0xc3
# CHECK: fadd %st(4), %st
0xd8,0xc4
# CHECK: fadd %st(5), %st
0xd8,0xc5
# CHECK: fadd %st(6), %st
0xd8,0xc6
# CHECK: fadd %st(7), %st
0xd8,0xc7
# CHECK: fmul %st(0), %st
0xd8,0xc8
# CHECK: fmul %st(1), %st
0xd8,0xc9
# CHECK: fmul %st(2), %st
0xd8,0xca
# CHECK: fmul %st(3), %st
0xd8,0xcb
# CHECK: fmul %st(4), %st
0xd8,0xcc
# CHECK: fmul %st(5), %st
0xd8,0xcd
# CHECK: fmul %st(6), %st
0xd8,0xce
# CHECK: fmul %st(7), %st
0xd8,0xcf
# CHECK: fcom %st(0)
0xd8,0xd0
# CHECK: fcom %st(1)
0xd8,0xd1
# CHECK: fcom %st(2)
0xd8,0xd2
# CHECK: fcom %st(3)
0xd8,0xd3
# CHECK: fcom %st(4)
0xd8,0xd4
# CHECK: fcom %st(5)
0xd8,0xd5
# CHECK: fcom %st(6)
0xd8,0xd6
# CHECK: fcom %st(7)
0xd8,0xd7
# CHECK: fcomp %st(0)
0xd8,0xd8
# CHECK: fcomp %st(1)
0xd8,0xd9
# CHECK: fcomp %st(2)
0xd8,0xda
# CHECK: fcomp %st(3)
0xd8,0xdb
# CHECK: fcomp %st(4)
0xd8,0xdc
# CHECK: fcomp %st(5)
0xd8,0xdd
# CHECK: fcomp %st(6)
0xd8,0xde
# CHECK: fcomp %st(7)
0xd8,0xdf
# CHECK: fsub %st(0), %st
0xd8,0xe0
# CHECK: fsub %st(1), %st
0xd8,0xe1
# CHECK: fsub %st(2), %st
0xd8,0xe2
# CHECK: fsub %st(3), %st
0xd8,0xe3
# CHECK: fsub %st(4), %st
0xd8,0xe4
# CHECK: fsub %st(5), %st
0xd8,0xe5
# CHECK: fsub %st(6), %st
0xd8,0xe6
# CHECK: fsub %st(7), %st
0xd8,0xe7
# CHECK: fsubr %st(0), %st
0xd8,0xe8
# CHECK: fsubr %st(1), %st
0xd8,0xe9
# CHECK: fsubr %st(2), %st
0xd8,0xea
# CHECK: fsubr %st(3), %st
0xd8,0xeb
# CHECK: fsubr %st(4), %st
0xd8,0xec
# CHECK: fsubr %st(5), %st
0xd8,0xed
# CHECK: fsubr %st(6), %st
0xd8,0xee
# CHECK: fsubr %st(7), %st
0xd8,0xef
# CHECK: fdiv %st(0), %st
0xd8,0xf0
# CHECK: fdiv %st(1), %st
0xd8,0xf1
# CHECK: fdiv %st(2), %st
0xd8,0xf2
# CHECK: fdiv %st(3), %st
0xd8,0xf3
# CHECK: fdiv %st(4), %st
0xd8,0xf4
# CHECK: fdiv %st(5), %st
0xd8,0xf5
# CHECK: fdiv %st(6), %st
0xd8,0xf6
# CHECK: fdiv %st(7), %st
0xd8,0xf7
# CHECK: fdivr %st(0), %st
0xd8,0xf8
# CHECK: fdivr %st(1), %st
0xd8,0xf9
# CHECK: fdivr %st(2), %st
0xd8,0xfa
# CHECK: fdivr %st(3), %st
0xd8,0xfb
# CHECK: fdivr %st(4), %st
0xd8,0xfc
# CHECK: fdivr %st(5), %st
0xd8,0xfd
# CHECK: fdivr %st(6), %st
0xd8,0xfe
# CHECK: fdivr %st(7), %st
0xd8,0xff
# CHECK: fld %st(0)
0xd9,0xc0
# CHECK: fld %st(1)
0xd9,0xc1
# CHECK: fld %st(2)
0xd9,0xc2
# CHECK: fld %st(3)
0xd9,0xc3
# CHECK: fld %st(4)
0xd9,0xc4
# CHECK: fld %st(5)
0xd9,0xc5
# CHECK: fld %st(6)
0xd9,0xc6
# CHECK: fld %st(7)
0xd9,0xc7
# CHECK: fxch %st(0)
0xd9,0xc8
# CHECK: fxch %st(1)
0xd9,0xc9
# CHECK: fxch %st(2)
0xd9,0xca
# CHECK: fxch %st(3)
0xd9,0xcb
# CHECK: fxch %st(4)
0xd9,0xcc
# CHECK: fxch %st(5)
0xd9,0xcd
# CHECK: fxch %st(6)
0xd9,0xce
# CHECK: fxch %st(7)
0xd9,0xcf
# CHECK: fnop
0xd9,0xd0
# CHECK: fchs
0xd9,0xe0
# CHECK: fabs
0xd9,0xe1
# CHECK: ftst
0xd9,0xe4
# CHECK: fxam
0xd9,0xe5
# CHECK: fld1
0xd9,0xe8
# CHECK: fldl2t
0xd9,0xe9
# CHECK: fldl2e
0xd9,0xea
# CHECK: fldpi
0xd9,0xeb
# CHECK: fldlg2
0xd9,0xec
# CHECK: fldln2
0xd9,0xed
# CHECK: fldz
0xd9,0xee
# CHECK: f2xm1
0xd9,0xf0
# CHECK: fyl2x
0xd9,0xf1
# CHECK: fptan
0xd9,0xf2
# CHECK: fpatan
0xd9,0xf3
# CHECK: fxtract
0xd9,0xf4
# CHECK: fprem1
0xd9,0xf5
# CHECK: fdecstp
0xd9,0xf6
# CHECK: fincstp
0xd9,0xf7
# CHECK: fprem
0xd9,0xf8
# CHECK: fyl2xp1
0xd9,0xf9
# CHECK: fsqrt
0xd9,0xfa
# CHECK: fsincos
0xd9,0xfb
# CHECK: frndint
0xd9,0xfc
# CHECK: fscale
0xd9,0xfd
# CHECK: fsin
0xd9,0xfe
# CHECK: fcos
0xd9,0xff
# CHECK: fcmovb %st(0), %st
0xda,0xc0
# CHECK: fcmovb %st(1), %st
0xda,0xc1
# CHECK: fcmovb %st(2), %st
0xda,0xc2
# CHECK: fcmovb %st(3), %st
0xda,0xc3
# CHECK: fcmovb %st(4), %st
0xda,0xc4
# CHECK: fcmovb %st(5), %st
0xda,0xc5
# CHECK: fcmovb %st(6), %st
0xda,0xc6
# CHECK: fcmovb %st(7), %st
0xda,0xc7
# CHECK: fcmove %st(0), %st
0xda,0xc8
# CHECK: fcmove %st(1), %st
0xda,0xc9
# CHECK: fcmove %st(2), %st
0xda,0xca
# CHECK: fcmove %st(3), %st
0xda,0xcb
# CHECK: fcmove %st(4), %st
0xda,0xcc
# CHECK: fcmove %st(5), %st
0xda,0xcd
# CHECK: fcmove %st(6), %st
0xda,0xce
# CHECK: fcmove %st(7), %st
0xda,0xcf
# CHECK: fcmovbe %st(0), %st
0xda,0xd0
# CHECK: fcmovbe %st(1), %st
0xda,0xd1
# CHECK: fcmovbe %st(2), %st
0xda,0xd2
# CHECK: fcmovbe %st(3), %st
0xda,0xd3
# CHECK: fcmovbe %st(4), %st
0xda,0xd4
# CHECK: fcmovbe %st(5), %st
0xda,0xd5
# CHECK: fcmovbe %st(6), %st
0xda,0xd6
# CHECK: fcmovbe %st(7), %st
0xda,0xd7
# CHECK: fcmovu %st(0), %st
0xda,0xd8
# CHECK: fcmovu %st(1), %st
0xda,0xd9
# CHECK: fcmovu %st(2), %st
0xda,0xda
# CHECK: fcmovu %st(3), %st
0xda,0xdb
# CHECK: fcmovu %st(4), %st
0xda,0xdc
# CHECK: fcmovu %st(5), %st
0xda,0xdd
# CHECK: fcmovu %st(6), %st
0xda,0xde
# CHECK: fcmovu %st(7), %st
0xda,0xdf
# CHECK: fucompp
0xda,0xe9
# CHECK: fcmovnb %st(0), %st
0xdb,0xc0
# CHECK: fcmovnb %st(1), %st
0xdb,0xc1
# CHECK: fcmovnb %st(2), %st
0xdb,0xc2
# CHECK: fcmovnb %st(3), %st
0xdb,0xc3
# CHECK: fcmovnb %st(4), %st
0xdb,0xc4
# CHECK: fcmovnb %st(5), %st
0xdb,0xc5
# CHECK: fcmovnb %st(6), %st
0xdb,0xc6
# CHECK: fcmovnb %st(7), %st
0xdb,0xc7
# CHECK: fcmovne %st(0), %st
0xdb,0xc8
# CHECK: fcmovne %st(1), %st
0xdb,0xc9
# CHECK: fcmovne %st(2), %st
0xdb,0xca
# CHECK: fcmovne %st(3), %st
0xdb,0xcb
# CHECK: fcmovne %st(4), %st
0xdb,0xcc
# CHECK: fcmovne %st(5), %st
0xdb,0xcd
# CHECK: fcmovne %st(6), %st
0xdb,0xce
# CHECK: fcmovne %st(7), %st
0xdb,0xcf
# CHECK: fcmovnbe %st(0), %st
0xdb,0xd0
# CHECK: fcmovnbe %st(1), %st
0xdb,0xd1
# CHECK: fcmovnbe %st(2), %st
0xdb,0xd2
# CHECK: fcmovnbe %st(3), %st
0xdb,0xd3
# CHECK: fcmovnbe %st(4), %st
0xdb,0xd4
# CHECK: fcmovnbe %st(5), %st
0xdb,0xd5
# CHECK: fcmovnbe %st(6), %st
0xdb,0xd6
# CHECK: fcmovnbe %st(7), %st
0xdb,0xd7
# CHECK: fcmovnu %st(0), %st
0xdb,0xd8
# CHECK: fcmovnu %st(1), %st
0xdb,0xd9
# CHECK: fcmovnu %st(2), %st
0xdb,0xda
# CHECK: fcmovnu %st(3), %st
0xdb,0xdb
# CHECK: fcmovnu %st(4), %st
0xdb,0xdc
# CHECK: fcmovnu %st(5), %st
0xdb,0xdd
# CHECK: fcmovnu %st(6), %st
0xdb,0xde
# CHECK: fcmovnu %st(7), %st
0xdb,0xdf
# CHECK: fnclex
0xdb,0xe2
# CHECK: fninit
0xdb,0xe3
# CHECK: fucomi %st(0)
0xdb,0xe8
# CHECK: fucomi %st(1)
0xdb,0xe9
# CHECK: fucomi %st(2)
0xdb,0xea
# CHECK: fucomi %st(3)
0xdb,0xeb
# CHECK: fucomi %st(4)
0xdb,0xec
# CHECK: fucomi %st(5)
0xdb,0xed
# CHECK: fucomi %st(6)
0xdb,0xee
# CHECK: fucomi %st(7)
0xdb,0xef
# CHECK: fcomi %st(0)
0xdb,0xf0
# CHECK: fcomi %st(1)
0xdb,0xf1
# CHECK: fcomi %st(2)
0xdb,0xf2
# CHECK: fcomi %st(3)
0xdb,0xf3
# CHECK: fcomi %st(4)
0xdb,0xf4
# CHECK: fcomi %st(5)
0xdb,0xf5
# CHECK: fcomi %st(6)
0xdb,0xf6
# CHECK: fcomi %st(7)
0xdb,0xf7
# CHECK: fadd %st, %st(0)
0xdc,0xc0
# CHECK: fadd %st, %st(1)
0xdc,0xc1
# CHECK: fadd %st, %st(2)
0xdc,0xc2
# CHECK: fadd %st, %st(3)
0xdc,0xc3
# CHECK: fadd %st, %st(4)
0xdc,0xc4
# CHECK: fadd %st, %st(5)
0xdc,0xc5
# CHECK: fadd %st, %st(6)
0xdc,0xc6
# CHECK: fadd %st, %st(7)
0xdc,0xc7
# CHECK: fmul %st, %st(0)
0xdc,0xc8
# CHECK: fmul %st, %st(1)
0xdc,0xc9
# CHECK: fmul %st, %st(2)
0xdc,0xca
# CHECK: fmul %st, %st(3)
0xdc,0xcb
# CHECK: fmul %st, %st(4)
0xdc,0xcc
# CHECK: fmul %st, %st(5)
0xdc,0xcd
# CHECK: fmul %st, %st(6)
0xdc,0xce
# CHECK: fmul %st, %st(7)
0xdc,0xcf
# CHECK: fsub %st, %st(0)
0xdc,0xe0
# CHECK: fsub %st, %st(1)
0xdc,0xe1
# CHECK: fsub %st, %st(2)
0xdc,0xe2
# CHECK: fsub %st, %st(3)
0xdc,0xe3
# CHECK: fsub %st, %st(4)
0xdc,0xe4
# CHECK: fsub %st, %st(5)
0xdc,0xe5
# CHECK: fsub %st, %st(6)
0xdc,0xe6
# CHECK: fsub %st, %st(7)
0xdc,0xe7
# CHECK: fsubr %st, %st(0)
0xdc,0xe8
# CHECK: fsubr %st, %st(1)
0xdc,0xe9
# CHECK: fsubr %st, %st(2)
0xdc,0xea
# CHECK: fsubr %st, %st(3)
0xdc,0xeb
# CHECK: fsubr %st, %st(4)
0xdc,0xec
# CHECK: fsubr %st, %st(5)
0xdc,0xed
# CHECK: fsubr %st, %st(6)
0xdc,0xee
# CHECK: fsubr %st, %st(7)
0xdc,0xef
# CHECK: fdiv %st, %st(0)
0xdc,0xf0
# CHECK: fdiv %st, %st(1)
0xdc,0xf1
# CHECK: fdiv %st, %st(2)
0xdc,0xf2
# CHECK: fdiv %st, %st(3)
0xdc,0xf3
# CHECK: fdiv %st, %st(4)
0xdc,0xf4
# CHECK: fdiv %st, %st(5)
0xdc,0xf5
# CHECK: fdiv %st, %st(6)
0xdc,0xf6
# CHECK: fdiv %st, %st(7)
0xdc,0xf7
# CHECK: fdivr %st, %st(0)
0xdc,0xf8
# CHECK: fdivr %st, %st(1)
0xdc,0xf9
# CHECK: fdivr %st, %st(2)
0xdc,0xfa
# CHECK: fdivr %st, %st(3)
0xdc,0xfb
# CHECK: fdivr %st, %st(4)
0xdc,0xfc
# CHECK: fdivr %st, %st(5)
0xdc,0xfd
# CHECK: fdivr %st, %st(6)
0xdc,0xfe
# CHECK: fdivr %st, %st(7)
0xdc,0xff
# CHECK: ffree %st(0)
0xdd,0xc0
# CHECK: ffree %st(1)
0xdd,0xc1
# CHECK: ffree %st(2)
0xdd,0xc2
# CHECK: ffree %st(3)
0xdd,0xc3
# CHECK: ffree %st(4)
0xdd,0xc4
# CHECK: ffree %st(5)
0xdd,0xc5
# CHECK: ffree %st(6)
0xdd,0xc6
# CHECK: ffree %st(7)
0xdd,0xc7
# CHECK: fst %st(0)
0xdd,0xd0
# CHECK: fst %st(1)
0xdd,0xd1
# CHECK: fst %st(2)
0xdd,0xd2
# CHECK: fst %st(3)
0xdd,0xd3
# CHECK: fst %st(4)
0xdd,0xd4
# CHECK: fst %st(5)
0xdd,0xd5
# CHECK: fst %st(6)
0xdd,0xd6
# CHECK: fst %st(7)
0xdd,0xd7
# CHECK: fstp %st(0)
0xdd,0xd8
# CHECK: fstp %st(1)
0xdd,0xd9
# CHECK: fstp %st(2)
0xdd,0xda
# CHECK: fstp %st(3)
0xdd,0xdb
# CHECK: fstp %st(4)
0xdd,0xdc
# CHECK: fstp %st(5)
0xdd,0xdd
# CHECK: fstp %st(6)
0xdd,0xde
# CHECK: fstp %st(7)
0xdd,0xdf
# CHECK: fucom %st(0)
0xdd,0xe0
# CHECK: fucom %st(1)
0xdd,0xe1
# CHECK: fucom %st(2)
0xdd,0xe2
# CHECK: fucom %st(3)
0xdd,0xe3
# CHECK: fucom %st(4)
0xdd,0xe4
# CHECK: fucom %st(5)
0xdd,0xe5
# CHECK: fucom %st(6)
0xdd,0xe6
# CHECK: fucom %st(7)
0xdd,0xe7
# CHECK: fucomp %st(0)
0xdd,0xe8
# CHECK: fucomp %st(1)
0xdd,0xe9
# CHECK: fucomp %st(2)
0xdd,0xea
# CHECK: fucomp %st(3)
0xdd,0xeb
# CHECK: fucomp %st(4)
0xdd,0xec
# CHECK: fucomp %st(5)
0xdd,0xed
# CHECK: fucomp %st(6)
0xdd,0xee
# CHECK: fucomp %st(7)
0xdd,0xef
# CHECK: faddp %st, %st(0)
0xde,0xc0
# CHECK: faddp %st, %st(1)
0xde,0xc1
# CHECK: faddp %st, %st(2)
0xde,0xc2
# CHECK: faddp %st, %st(3)
0xde,0xc3
# CHECK: faddp %st, %st(4)
0xde,0xc4
# CHECK: faddp %st, %st(5)
0xde,0xc5
# CHECK: faddp %st, %st(6)
0xde,0xc6
# CHECK: faddp %st, %st(7)
0xde,0xc7
# CHECK: fmulp %st, %st(0)
0xde,0xc8
# CHECK: fmulp %st, %st(1)
0xde,0xc9
# CHECK: fmulp %st, %st(2)
0xde,0xca
# CHECK: fmulp %st, %st(3)
0xde,0xcb
# CHECK: fmulp %st, %st(4)
0xde,0xcc
# CHECK: fmulp %st, %st(5)
0xde,0xcd
# CHECK: fmulp %st, %st(6)
0xde,0xce
# CHECK: fmulp %st, %st(7)
0xde,0xcf
# CHECK: fcompp
0xde,0xd9
# CHECK: fsubp %st, %st(0)
0xde,0xe0
# CHECK: fsubp %st, %st(1)
0xde,0xe1
# CHECK: fsubp %st, %st(2)
0xde,0xe2
# CHECK: fsubp %st, %st(3)
0xde,0xe3
# CHECK: fsubp %st, %st(4)
0xde,0xe4
# CHECK: fsubp %st, %st(5)
0xde,0xe5
# CHECK: fsubp %st, %st(6)
0xde,0xe6
# CHECK: fsubp %st, %st(7)
0xde,0xe7
# CHECK: fsubrp %st, %st(0)
0xde,0xe8
# CHECK: fsubrp %st, %st(1)
0xde,0xe9
# CHECK: fsubrp %st, %st(2)
0xde,0xea
# CHECK: fsubrp %st, %st(3)
0xde,0xeb
# CHECK: fsubrp %st, %st(4)
0xde,0xec
# CHECK: fsubrp %st, %st(5)
0xde,0xed
# CHECK: fsubrp %st, %st(6)
0xde,0xee
# CHECK: fsubrp %st, %st(7)
0xde,0xef
# CHECK: fdivp %st, %st(0)
0xde,0xf0
# CHECK: fdivp %st, %st(1)
0xde,0xf1
# CHECK: fdivp %st, %st(2)
0xde,0xf2
# CHECK: fdivp %st, %st(3)
0xde,0xf3
# CHECK: fdivp %st, %st(4)
0xde,0xf4
# CHECK: fdivp %st, %st(5)
0xde,0xf5
# CHECK: fdivp %st, %st(6)
0xde,0xf6
# CHECK: fdivp %st, %st(7)
0xde,0xf7
# CHECK: fdivrp %st, %st(0)
0xde,0xf8
# CHECK: fdivrp %st, %st(1)
0xde,0xf9
# CHECK: fdivrp %st, %st(2)
0xde,0xfa
# CHECK: fdivrp %st, %st(3)
0xde,0xfb
# CHECK: fdivrp %st, %st(4)
0xde,0xfc
# CHECK: fdivrp %st, %st(5)
0xde,0xfd
# CHECK: fdivrp %st, %st(6)
0xde,0xfe
# CHECK: fdivrp %st, %st(7)
0xde,0xff
# CHECK: ffreep %st(0)
0xdf,0xc0
# CHECK: ffreep %st(1)
0xdf,0xc1
# CHECK: ffreep %st(2)
0xdf,0xc2
# CHECK: ffreep %st(3)
0xdf,0xc3
# CHECK: ffreep %st(4)
0xdf,0xc4
# CHECK: ffreep %st(5)
0xdf,0xc5
# CHECK: ffreep %st(6)
0xdf,0xc6
# CHECK: ffreep %st(7)
0xdf,0xc7
# CHECK: fnstsw %ax
0xdf,0xe0
# CHECK: fucompi %st(0)
0xdf,0xe8
# CHECK: fucompi %st(1)
0xdf,0xe9
# CHECK: fucompi %st(2)
0xdf,0xea
# CHECK: fucompi %st(3)
0xdf,0xeb
# CHECK: fucompi %st(4)
0xdf,0xec
# CHECK: fucompi %st(5)
0xdf,0xed
# CHECK: fucompi %st(6)
0xdf,0xee
# CHECK: fucompi %st(7)
0xdf,0xef
# CHECK: fcompi %st(0)
0xdf,0xf0
# CHECK: fcompi %st(1)
0xdf,0xf1
# CHECK: fcompi %st(2)
0xdf,0xf2
# CHECK: fcompi %st(3)
0xdf,0xf3
# CHECK: fcompi %st(4)
0xdf,0xf4
# CHECK: fcompi %st(5)
0xdf,0xf5
# CHECK: fcompi %st(6)
0xdf,0xf6
# CHECK: fcompi %st(7)
0xdf,0xf7