Skip to content

Commit

Permalink
Regenerate x86 platform intrinsics
Browse files Browse the repository at this point in the history
The exact command used was:

    $ cd src/etc/platform-intrinsics/x86
    $ python2 ../generator.py --format compiler-defs -i info.json   \
      sse.json sse2.json sse3.json ssse3.json sse41.json sse42.json \
      avx.json avx2.json fma.json                                   \
      > ../../../librustc_platform_intrinsics/x86.rs
  • Loading branch information
ruuda committed Mar 5, 2016
1 parent 0ce0cf1 commit a409076
Showing 1 changed file with 120 additions and 0 deletions.
120 changes: 120 additions & 0 deletions src/librustc_platform_intrinsics/x86.rs
Expand Up @@ -1108,6 +1108,126 @@ pub fn find<'tcx>(_tcx: &TyCtxt<'tcx>, name: &str) -> Option<Intrinsic> {
output: v(u(16), 16),
definition: Named("llvm.x86.avx2.psubus.w")
},
"_fmadd_ps" => Intrinsic {
inputs: vec![v(f(32), 4), v(f(32), 4), v(f(32), 4)],
output: v(f(32), 4),
definition: Named("llvm.x86.fma.vfmadd.ps")
},
"_fmadd_pd" => Intrinsic {
inputs: vec![v(f(64), 2), v(f(64), 2), v(f(64), 2)],
output: v(f(64), 2),
definition: Named("llvm.x86.fma.vfmadd.pd")
},
"256_fmadd_ps" => Intrinsic {
inputs: vec![v(f(32), 8), v(f(32), 8), v(f(32), 8)],
output: v(f(32), 8),
definition: Named("llvm.x86.fma.vfmadd.ps.256")
},
"256_fmadd_pd" => Intrinsic {
inputs: vec![v(f(64), 4), v(f(64), 4), v(f(64), 4)],
output: v(f(64), 4),
definition: Named("llvm.x86.fma.vfmadd.pd.256")
},
"_fmaddsub_ps" => Intrinsic {
inputs: vec![v(f(32), 4), v(f(32), 4), v(f(32), 4)],
output: v(f(32), 4),
definition: Named("llvm.x86.fma.vfmaddsub.ps")
},
"_fmaddsub_pd" => Intrinsic {
inputs: vec![v(f(64), 2), v(f(64), 2), v(f(64), 2)],
output: v(f(64), 2),
definition: Named("llvm.x86.fma.vfmaddsub.pd")
},
"256_fmaddsub_ps" => Intrinsic {
inputs: vec![v(f(32), 8), v(f(32), 8), v(f(32), 8)],
output: v(f(32), 8),
definition: Named("llvm.x86.fma.vfmaddsub.ps.256")
},
"256_fmaddsub_pd" => Intrinsic {
inputs: vec![v(f(64), 4), v(f(64), 4), v(f(64), 4)],
output: v(f(64), 4),
definition: Named("llvm.x86.fma.vfmaddsub.pd.256")
},
"_fmsub_ps" => Intrinsic {
inputs: vec![v(f(32), 4), v(f(32), 4), v(f(32), 4)],
output: v(f(32), 4),
definition: Named("llvm.x86.fma.vfmsub.ps")
},
"_fmsub_pd" => Intrinsic {
inputs: vec![v(f(64), 2), v(f(64), 2), v(f(64), 2)],
output: v(f(64), 2),
definition: Named("llvm.x86.fma.vfmsub.pd")
},
"256_fmsub_ps" => Intrinsic {
inputs: vec![v(f(32), 8), v(f(32), 8), v(f(32), 8)],
output: v(f(32), 8),
definition: Named("llvm.x86.fma.vfmsub.ps.256")
},
"256_fmsub_pd" => Intrinsic {
inputs: vec![v(f(64), 4), v(f(64), 4), v(f(64), 4)],
output: v(f(64), 4),
definition: Named("llvm.x86.fma.vfmsub.pd.256")
},
"_fmsubadd_ps" => Intrinsic {
inputs: vec![v(f(32), 4), v(f(32), 4), v(f(32), 4)],
output: v(f(32), 4),
definition: Named("llvm.x86.fma.vfmsubadd.ps")
},
"_fmsubadd_pd" => Intrinsic {
inputs: vec![v(f(64), 2), v(f(64), 2), v(f(64), 2)],
output: v(f(64), 2),
definition: Named("llvm.x86.fma.vfmsubadd.pd")
},
"256_fmsubadd_ps" => Intrinsic {
inputs: vec![v(f(32), 8), v(f(32), 8), v(f(32), 8)],
output: v(f(32), 8),
definition: Named("llvm.x86.fma.vfmsubadd.ps.256")
},
"256_fmsubadd_pd" => Intrinsic {
inputs: vec![v(f(64), 4), v(f(64), 4), v(f(64), 4)],
output: v(f(64), 4),
definition: Named("llvm.x86.fma.vfmsubadd.pd.256")
},
"_fnmadd_ps" => Intrinsic {
inputs: vec![v(f(32), 4), v(f(32), 4), v(f(32), 4)],
output: v(f(32), 4),
definition: Named("llvm.x86.fma.vfnmadd.ps")
},
"_fnmadd_pd" => Intrinsic {
inputs: vec![v(f(64), 2), v(f(64), 2), v(f(64), 2)],
output: v(f(64), 2),
definition: Named("llvm.x86.fma.vfnmadd.pd")
},
"256_fnmadd_ps" => Intrinsic {
inputs: vec![v(f(32), 8), v(f(32), 8), v(f(32), 8)],
output: v(f(32), 8),
definition: Named("llvm.x86.fma.vfnmadd.ps.256")
},
"256_fnmadd_pd" => Intrinsic {
inputs: vec![v(f(64), 4), v(f(64), 4), v(f(64), 4)],
output: v(f(64), 4),
definition: Named("llvm.x86.fma.vfnmadd.pd.256")
},
"_fnmsub_ps" => Intrinsic {
inputs: vec![v(f(32), 4), v(f(32), 4), v(f(32), 4)],
output: v(f(32), 4),
definition: Named("llvm.x86.fma.vfnmsub.ps")
},
"_fnmsub_pd" => Intrinsic {
inputs: vec![v(f(64), 2), v(f(64), 2), v(f(64), 2)],
output: v(f(64), 2),
definition: Named("llvm.x86.fma.vfnmsub.pd")
},
"256_fnmsub_ps" => Intrinsic {
inputs: vec![v(f(32), 8), v(f(32), 8), v(f(32), 8)],
output: v(f(32), 8),
definition: Named("llvm.x86.fma.vfnmsub.ps.256")
},
"256_fnmsub_pd" => Intrinsic {
inputs: vec![v(f(64), 4), v(f(64), 4), v(f(64), 4)],
output: v(f(64), 4),
definition: Named("llvm.x86.fma.vfnmsub.pd.256")
},
_ => return None,
})
}

0 comments on commit a409076

Please sign in to comment.