MIPS: asmmacro: Ensure 64-bit FP registers are used with MSA
[deliverable/linux.git] / arch / mips / include / asm / asmmacro.h
index 6156ac8c4cfb9a854bf3ed3a5546606216161118..76317a70200d18048404438bd85b69fb8bf8ec3e 100644 (file)
        .endm
 
 #ifdef TOOLCHAIN_SUPPORTS_MSA
+/* preprocessor replaces the fp in ".set fp=64" with $30 otherwise */
+#undef fp
+
        .macro  _cfcmsa rd, cs
        .set    push
        .set    mips32r2
+       .set    fp=64
        .set    msa
        cfcmsa  \rd, $\cs
        .set    pop
        .macro  _ctcmsa cd, rs
        .set    push
        .set    mips32r2
+       .set    fp=64
        .set    msa
        ctcmsa  $\cd, \rs
        .set    pop
        .macro  ld_d    wd, off, base
        .set    push
        .set    mips32r2
+       .set    fp=64
        .set    msa
        ld.d    $w\wd, \off(\base)
        .set    pop
        .macro  st_d    wd, off, base
        .set    push
        .set    mips32r2
+       .set    fp=64
        .set    msa
        st.d    $w\wd, \off(\base)
        .set    pop
        .macro  copy_u_w        ws, n
        .set    push
        .set    mips32r2
+       .set    fp=64
        .set    msa
        copy_u.w $1, $w\ws[\n]
        .set    pop
        .macro  copy_u_d        ws, n
        .set    push
        .set    mips64r2
+       .set    fp=64
        .set    msa
        copy_u.d $1, $w\ws[\n]
        .set    pop
        .macro  insert_w        wd, n
        .set    push
        .set    mips32r2
+       .set    fp=64
        .set    msa
        insert.w $w\wd[\n], $1
        .set    pop
        .macro  insert_d        wd, n
        .set    push
        .set    mips64r2
+       .set    fp=64
        .set    msa
        insert.d $w\wd[\n], $1
        .set    pop
This page took 0.029265 seconds and 5 git commands to generate.