-fadd => {
- state => "exc_pinned",
- emit => 'fadd%FP%FM %AF',
- latency => 4,
- attr_type => "ia32_x87_attr_t",
- constructors => {},
-},
-
-fmul => {
- state => "exc_pinned",
- emit => 'fmul%FP%FM %AF',
- latency => 4,
- attr_type => "ia32_x87_attr_t",
- constructors => {},
-},
-
-fsub => {
- state => "exc_pinned",
- emit => 'fsub%FR%FP%FM %AF',
- latency => 4,
- attr_type => "ia32_x87_attr_t",
- constructors => {},
-},
-
-fprem => {
- emit => 'fprem1',
- latency => 20,
- attr_type => "ia32_x87_attr_t",
- constructors => {},
-},
-
-fdiv => {
- state => "exc_pinned",
- emit => 'fdiv%FR%FP%FM %AF',
- latency => 20,
- attr_type => "ia32_x87_attr_t",
- constructors => {},
-},
-
-fabs => {
- emit => 'fabs',
- latency => 4,
- attr_type => "ia32_x87_attr_t",
- constructors => {},
-},
-
-fchs => {
- op_flags => [ "keep" ],
- irn_flags => [ "rematerializable" ],
- emit => 'fchs',
- latency => 4,
- attr_type => "ia32_x87_attr_t",
- constructors => {},
-},
-
-fld => {
- irn_flags => [ "rematerializable" ],
- state => "exc_pinned",
- emit => 'fld%FM %AM',
- attr_type => "ia32_x87_attr_t",
- latency => 2,
- constructors => {},
-},
-
-fst => {
- irn_flags => [ "rematerializable" ],
- state => "exc_pinned",
- emit => 'fst%FP%FM %AM',
- mode => "mode_M",
- attr_type => "ia32_x87_attr_t",
- latency => 2,
- constructors => {},
-},
-
-fild => {
- state => "exc_pinned",
- emit => 'fild%FM %AM',
- attr_type => "ia32_x87_attr_t",
- latency => 2,
- constructors => {},
-},
-
-fist => {
- state => "exc_pinned",
- emit => 'fist%FP%FM %AM',
- mode => "mode_M",
- attr_type => "ia32_x87_attr_t",
- latency => 2,
- constructors => {},
-},
-
-# SSE3 fisttp instruction
-fisttp => {
- state => "exc_pinned",
- emit => 'fisttp%FM %AM',
- mode => "mode_M",
- attr_type => "ia32_x87_attr_t",
- latency => 2,
- constructors => {},
-},
-
-fldz => {
- op_flags => [ "constlike", "keep" ],
- irn_flags => [ "rematerializable" ],
- reg_req => { out => [ "vfp" ] },
- emit => 'fldz',
- attr_type => "ia32_x87_attr_t",
- latency => 2,
-},
-
-fld1 => {
- op_flags => [ "constlike", "keep" ],
- irn_flags => [ "rematerializable" ],
- reg_req => { out => [ "vfp" ] },
- emit => 'fld1',
- attr_type => "ia32_x87_attr_t",
- latency => 2,
-},
-
-fldpi => {
- op_flags => [ "constlike", "keep" ],
- irn_flags => [ "rematerializable" ],
- reg_req => { out => [ "vfp" ] },
- emit => 'fldpi',
- attr_type => "ia32_x87_attr_t",
- latency => 2,
-},
-
-fldln2 => {
- op_flags => [ "constlike", "keep" ],
- irn_flags => [ "rematerializable" ],
- reg_req => { out => [ "vfp" ] },
- emit => 'fldln2',
- attr_type => "ia32_x87_attr_t",
- latency => 2,
-},
-
-fldlg2 => {
- op_flags => [ "constlike", "keep" ],
- irn_flags => [ "rematerializable" ],
- reg_req => { out => [ "vfp" ] },
- emit => 'fldlg2',
- attr_type => "ia32_x87_attr_t",
- latency => 2,
-},
-
-fldl2t => {
- op_flags => [ "constlike", "keep" ],
- irn_flags => [ "rematerializable" ],
- reg_req => { out => [ "vfp" ] },
- emit => 'fldll2t',
- attr_type => "ia32_x87_attr_t",
- latency => 2,
-},
-
-fldl2e => {
- op_flags => [ "constlike", "keep" ],
- irn_flags => [ "rematerializable" ],
- reg_req => { out => [ "vfp" ] },
- emit => 'fldl2e',
- attr_type => "ia32_x87_attr_t",
- latency => 2,
-},
-