blob: 4d6317d80a57e306ce117902e31570b33c21bb83 [file] [log] [blame]
{
"intrinsic_prefix": "_mm",
"llvm_prefix": "llvm.x86.sse2.",
"intrinsics": [
{
"intrinsic": "_adds_{0.data_type}",
"width": [128],
"llvm": "padd{0.kind_short}s.{0.data_type_short}",
"ret": "i(8-16)",
"args": ["0", "0"]
},
{
"intrinsic": "_avg_{0.data_type}",
"width": [128],
"llvm": "pavg.{0.data_type_short}",
"ret": "u(8-16)",
"args": ["0", "0"]
},
{
"intrinsic": "_lfence",
"width": [128],
"llvm": "lfence",
"ret": "V",
"args": []
},
{
"intrinsic": "_madd_epi16",
"width": [128],
"llvm": "pmadd.wd",
"ret": "s32",
"args": ["s16", "s16"]
},
{
"intrinsic": "_maskmoveu_si128",
"width": [128],
"llvm": "maskmov.dqu",
"ret": "V",
"args": ["u8", "u8", "U8Pm"]
},
{
"intrinsic": "_max_{0.data_type}",
"width": [128],
"llvm": "pmax{0.kind}.{0.data_type_short}",
"ret": ["s16", "u8"],
"args": ["0", "0"]
},
{
"intrinsic": "_max_pd",
"width": [128],
"llvm": "max.pd",
"ret": "f64",
"args": ["0", "0"]
},
{
"intrinsic": "_mfence",
"width": [128],
"llvm": "fence",
"ret": "V",
"args": []
},
{
"intrinsic": "_min_{0.data_type}",
"width": [128],
"llvm": "pmin{0.kind}.{0.data_type_short}",
"ret": ["s16", "u8"],
"args": ["0", "0"]
},
{
"intrinsic": "_min_pd",
"width": [128],
"llvm": "min.pd",
"ret": "f64",
"args": ["0", "0"]
},
{
"intrinsic": "_movemask_pd",
"width": [128],
"llvm": "movmsk.pd",
"ret": "S32",
"args": ["f64"]
},
{
"intrinsic": "_movemask_epi8",
"width": [128],
"llvm": "pmovmskb.128",
"ret": "S32",
"args": ["s8"]
},
{
"intrinsic": "_mul_epu32",
"width": [128],
"llvm": "pmulu.dq",
"ret": "u64",
"args": ["0dn", "0dn"]
},
{
"intrinsic": "_mulhi_{0.data_type}",
"width": [128],
"llvm": "pmulh{0.kind_short}.w",
"ret": "i16",
"args": ["0", "0"]
},
{
"intrinsic": "_packs_{1.data_type}",
"width": [128],
"llvm": "packss{1.data_type_short}{0.data_type_short}.128",
"ret": "s(8-16)",
"args": ["0hw", "0hw"]
},
{
"intrinsic": "_packus_epi16",
"width": [128],
"llvm": "packuswb.128",
"ret": "u8",
"args": ["s16", "s16"]
},
{
"intrinsic": "_sad_epu8",
"width": [128],
"llvm": "psad.bw",
"ret": "u64",
"args": ["u8", "u8"]
},
{
"intrinsic": "_sfence",
"width": [128],
"llvm": "sfence",
"ret": "V",
"args": []
},
{
"intrinsic": "_sqrt_pd",
"width": [128],
"llvm": "!llvm.sqrt.v2f64",
"ret": "f64",
"args": ["0"]
},
{
"intrinsic": "_storeu_pd",
"width": [128],
"llvm": "storeu.pd",
"ret": "V",
"args": ["F64Pm/U8", "f64"]
},
{
"intrinsic": "_storeu_si128",
"width": [128],
"llvm": "storeu.dq",
"ret": "V",
"args": ["u8Pm/U8", "u8"]
},
{
"intrinsic": "_subs_{0.data_type}",
"width": [128],
"llvm": "psub{0.kind_short}s.{0.data_type_short}",
"ret": "i(8-16)",
"args": ["0", "0"]
}
]
}