i386: Add tests for -malign-branch-boundary and -malign-branch
[deliverable/binutils-gdb.git] / gas / testsuite / gas / i386 / i386.exp
index 62c03d815af403ebbf8f7dbf0bfe6c0b2e4c80a1..c31ffab2680d02830895faafe188bf4c11ce358a 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2012-2018 Free Software Foundation, Inc.
+# Copyright (C) 2012-2019 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -33,6 +33,13 @@ proc gas_32_check { } {
     return [regexp "targets:.*i386" [lindex $status 1]];
 }
 
+proc gas_bfd64_check { } {
+    global AS
+
+    set status [gas_host_run "$AS --help" ""]
+    return [regexp "32bit/64bit/x32" [lindex $status 1]];
+}
+
 if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]  then {
 
     global ASFLAGS
@@ -57,6 +64,7 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_list_test "intelbad" ""
     run_dump_test "intelok"
     run_dump_test "prefix"
+    run_list_test "prefix32" "-al"
     run_dump_test "amd"
     run_dump_test "katmai"
     run_dump_test "jump"
@@ -65,6 +73,7 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "relax-2"
     run_dump_test "ssemmx2"
     run_dump_test "sse2"
+    run_dump_test "sse2-16bit"
     run_dump_test "sub"
     run_dump_test "sse3"
     run_dump_test "sib"
@@ -119,8 +128,12 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "nops-5-i686"
     run_dump_test "nops-6"
     run_dump_test "nops-7"
+    run_dump_test "noreg16"
+    run_dump_test "noreg32"
     run_dump_test "addr16"
     run_dump_test "addr32"
+    run_dump_test "code16"
+    run_list_test "oversized16" "-al"
     run_dump_test "sse4_1"
     run_dump_test "sse4_1-intel"
     run_dump_test "sse4_2"
@@ -155,6 +168,7 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "arch-10-bdver3"
     run_dump_test "arch-10-bdver4"
     run_dump_test "arch-13-znver1"
+    run_dump_test "arch-13-znver2"
     run_dump_test "arch-10-btver1"
     run_dump_test "arch-10-btver2"
     run_list_test "arch-10-1" "-march=generic32 -I${srcdir}/$subdir -al"
@@ -187,6 +201,7 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_list_test "noavx512-1" "-al"
     run_list_test "noavx512-2" "-al"
     run_dump_test "noextreg"
+    run_dump_test "xmmhi32"
     run_dump_test "xsave"
     run_dump_test "xsave-intel"
     run_dump_test "aes"
@@ -197,33 +212,43 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "avx-intel"
     run_dump_test "avx-scalar"
     run_dump_test "avx-scalar-intel"
+    run_dump_test "avx-scalar-2"
+    run_dump_test "avx-16bit"
     run_dump_test "avx256int"
     run_dump_test "avx256int-intel"
     run_dump_test "avx2"
     run_dump_test "avx2-intel"
     run_dump_test "avx-gather"
     run_dump_test "avx-gather-intel"
+    run_dump_test "avx-wig"
+    run_dump_test "avx2-wig"
+    run_dump_test "vex-lig-2"
     run_dump_test "avx512f"
     run_dump_test "avx512f-intel"
     run_dump_test "avx512f-opts"
     run_dump_test "avx512f-opts-intel"
     run_dump_test "avx512f-nondef"
     run_list_test "avx512f-plain" "-al"
+    run_dump_test "avx512f-ymm"
+    run_dump_test "avx512f-16bit"
     run_dump_test "avx512cd"
     run_dump_test "avx512cd-intel"
     run_dump_test "avx512er"
     run_dump_test "avx512er-intel"
     run_dump_test "avx512pf"
     run_dump_test "avx512pf-intel"
+    run_dump_test "evex"
     run_dump_test "evex-lig256"
     run_dump_test "evex-lig512"
     run_dump_test "evex-lig256-intel"
     run_dump_test "evex-lig512-intel"
+    run_dump_test "evex-lig-2"
     run_dump_test "evex-wig1"
     run_dump_test "evex-wig1-intel"
     run_dump_test "sse2avx"
     run_list_test "inval-avx" "-al"
     run_list_test "inval-avx512f" "-al"
+    run_list_test "inval-avx512vl" "-al"
     run_dump_test "sse-check"
     run_dump_test "sse-check-none"
     run_dump_test "sse-check-warn"
@@ -257,6 +282,7 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "sse2avx-opts-intel"
     run_dump_test "bmi2"
     run_dump_test "bmi2-intel"
+    run_dump_test "bmi2-16bit"
     run_dump_test "fma"
     run_dump_test "fma-intel"
     run_dump_test "fma-scalar"
@@ -268,12 +294,15 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "rtm-intel"
     run_dump_test "fma4"
     run_dump_test "lwp"
+    run_dump_test "lwp-16bit"
     run_dump_test "xop"
     run_dump_test "xop32reg"
     run_dump_test "bmi"
     run_dump_test "bmi-intel"
+    run_dump_test "bmi-16bit"
     run_dump_test "tbm"
     run_dump_test "tbm-intel"
+    run_dump_test "tbm-16bit"
     run_dump_test "f16c"
     run_dump_test "f16c-intel"
     run_dump_test "fsgs"
@@ -406,6 +435,10 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "avx512bitalg-intel"
     run_dump_test "avx512bitalg_vl"
     run_dump_test "avx512bitalg_vl-intel"
+    run_dump_test "avx512_bf16"
+    run_dump_test "avx512_bf16_vl"
+    run_list_test "avx512_bf16_vl-inval"
+    run_list_test "sg"
     run_dump_test "clzero"
     run_dump_test "disassem"
     run_dump_test "mwaitx-bdver4"
@@ -429,6 +462,15 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "waitpkg-intel"
     run_dump_test "cldemote"
     run_dump_test "cldemote-intel"
+    run_dump_test "movdir"
+    run_dump_test "movdir-intel"
+    run_list_test "movdir64b-reg"
+    run_dump_test "enqcmd"
+    run_dump_test "enqcmd-intel"
+    run_list_test "enqcmd-inval"
+    run_dump_test "vp2intersect"
+    run_dump_test "vp2intersect-intel"
+    run_list_test "vp2intersect-inval-bcast"
     run_list_test "avx512vl-1" "-al"
     run_list_test "avx512vl-2" "-al"
     run_list_test "avx512vl-plain" "-al"
@@ -447,10 +489,33 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "nop-1"
     run_dump_test "nop-2"
     run_dump_test "optimize-1"
+    run_dump_test "optimize-1a"
     run_dump_test "optimize-2"
+    run_dump_test "optimize-2b"
     run_dump_test "optimize-3"
     run_dump_test "optimize-4"
     run_dump_test "optimize-5"
+    run_list_test "optimize-6a" "-I${srcdir}/$subdir -march=+noavx -al"
+    run_dump_test "optimize-6b"
+    run_list_test "optimize-7" "-I${srcdir}/$subdir -march=+noavx2 -al"
+    run_dump_test "align-branch-1a"
+    run_dump_test "align-branch-1b"
+    run_dump_test "align-branch-1c"
+    run_dump_test "align-branch-1d"
+    run_dump_test "align-branch-1e"
+    run_dump_test "align-branch-1f"
+    run_dump_test "align-branch-1g"
+    run_dump_test "align-branch-1h"
+    run_dump_test "align-branch-1i"
+    run_dump_test "align-branch-2a"
+    run_dump_test "align-branch-2b"
+    run_dump_test "align-branch-2c"
+    run_dump_test "align-branch-4a"
+    run_dump_test "align-branch-4b"
+    run_dump_test "align-branch-5"
+    run_dump_test "align-branch-6"
+    run_dump_test "align-branch-7"
+    run_dump_test "align-branch-8"
 
     # These tests require support for 8 and 16 bit relocs,
     # so we only run them for ELF and COFF targets.
@@ -485,6 +550,9 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
        run_list_test "reloc32" "--defsym _bad_=1"
        run_dump_test "intel-got32"
        run_dump_test "intel-movs32"
+       run_dump_test "intel-movs16"
+       run_dump_test "intel-cmps32"
+       run_dump_test "intel-cmps16"
        run_list_test "inval-equ-1" "-al"
        run_list_test "inval-equ-2" "-al"
        run_dump_test "ifunc"
@@ -519,12 +587,20 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
        run_dump_test "nop-5"
        run_dump_test "nop-6"
 
+       run_dump_test "evex-no-scale-32"
+       run_dump_test "property-1"
+       run_dump_test "property-2"
+
+       if {[istarget "*-*-linux*"]} then {
+           run_dump_test "align-branch-3"
+       }
+
        if { [gas_64_check] } then {
            run_dump_test "att-regs"
            run_dump_test "intel-regs"
            run_dump_test "mixed-mode-reloc32"
            run_dump_test "code64"
-       } else {
+       } elseif { ![gas_bfd64_check] } {
            run_list_test "code64-inval" "-I${srcdir}/$subdir -al"
        }
 
@@ -648,6 +724,8 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-nops-5"
     run_dump_test "x86-64-nops-5-k8"
     run_dump_test "x86-64-nops-7"
+    run_dump_test "noreg64"
+    run_list_test "cvtsi2sX"
     run_dump_test "x86-64-sse4_1"
     run_dump_test "x86-64-sse4_1-intel"
     run_dump_test "x86-64-sse4_2"
@@ -668,12 +746,15 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-disp"
     run_dump_test "x86-64-disp-intel"
     run_dump_test "intel-movs64"
+    run_dump_test "intel-cmps64"
     run_dump_test "x86-64-disp32"
     run_dump_test "rexw"
     run_list_test "x86-64-specific-reg"
     run_list_test "suffix-bad"
     run_list_test "x86-64-suffix-bad"
     run_list_test "unspec64" ""
+    run_list_test "prefix64" "-al"
+    run_list_test "oversized64" "-al"
     run_dump_test "x86-64-fxsave"
     run_dump_test "x86-64-fxsave-intel"
     run_dump_test "x86-64-arch-1"
@@ -686,10 +767,12 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-arch-2-bdver3"
     run_dump_test "x86-64-arch-2-bdver4"
     run_dump_test "x86-64-arch-3-znver1"
+    run_dump_test "x86-64-arch-3-znver2"
     run_dump_test "x86-64-arch-2-btver1"
     run_dump_test "x86-64-arch-2-btver2"
     run_list_test "x86-64-arch-2-1" "-march=generic64 -I${srcdir}/$subdir -al"
     run_list_test "x86-64-arch-2-2" "-march=generic64+cx16 -I${srcdir}/$subdir -al"
+    run_dump_test "xmmhi64"
     run_dump_test "x86-64-xsave"
     run_dump_test "x86-64-xsave-intel"
     run_dump_test "x86-64-aes"
@@ -700,6 +783,7 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-avx-intel"
     run_dump_test "x86-64-avx-scalar"
     run_dump_test "x86-64-avx-scalar-intel"
+    run_dump_test "x86-64-avx-scalar-2"
     run_dump_test "x86-64-avx256int"
     run_dump_test "x86-64-avx_gfni"
     run_dump_test "x86-64-avx_gfni-intel"
@@ -708,6 +792,9 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-avx2-intel"
     run_dump_test "x86-64-avx-gather"
     run_dump_test "x86-64-avx-gather-intel"
+    run_dump_test "x86-64-avx-wig"
+    run_dump_test "x86-64-avx2-wig"
+    run_dump_test "x86-64-vex-lig-2"
     run_dump_test "x86-64-avx512f"
     run_dump_test "x86-64-avx512f-intel"
     run_dump_test "x86-64-avx512f-opts"
@@ -723,11 +810,14 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-evex-lig512"
     run_dump_test "x86-64-evex-lig256-intel"
     run_dump_test "x86-64-evex-lig512-intel"
+    run_dump_test "x86-64-evex-lig-2"
     run_dump_test "x86-64-evex-wig1"
     run_dump_test "x86-64-evex-wig1-intel"
+    run_dump_test "x86-64-evex-wig2"
     run_dump_test "x86-64-sse2avx"
     run_list_test "x86-64-inval-avx" "-al"
     run_list_test "x86-64-inval-avx512f" "-al"
+    run_list_test "x86-64-inval-avx512vl" "-al"
     run_dump_test "x86-64-sse-check"
     run_dump_test "x86-64-sse-check-none"
     run_dump_test "x86-64-sse-check-warn"
@@ -752,6 +842,7 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-sse2avx-opts-intel"
     run_dump_test "x86-64-avx-swap"
     run_dump_test "x86-64-avx-swap-intel"
+    run_dump_test "x86-64-avx-swap-2"
     run_dump_test "x86-64-bmi2"
     run_dump_test "x86-64-bmi2-intel"
     run_dump_test "x86-64-fma"
@@ -899,6 +990,9 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-avx512bitalg-intel"
     run_dump_test "x86-64-avx512bitalg_vl"
     run_dump_test "x86-64-avx512bitalg_vl-intel"
+    run_dump_test "x86-64-avx512_bf16"
+    run_dump_test "x86-64-avx512_bf16_vl"
+    run_list_test "x86-64-avx512_bf16_vl-inval"
     run_dump_test "x86-64-clzero"
     run_dump_test "x86-64-mwaitx-bdver4"
     run_list_test "x86-64-mwaitx-reg"
@@ -921,6 +1015,15 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-waitpkg-intel"
     run_dump_test "x86-64-cldemote"
     run_dump_test "x86-64-cldemote-intel"
+    run_dump_test "x86-64-movdir"
+    run_dump_test "x86-64-movdir-intel"
+    run_list_test "x86-64-movdir64b-reg"
+    run_dump_test "x86-64-enqcmd"
+    run_dump_test "x86-64-enqcmd-intel"
+    run_list_test "x86-64-enqcmd-inval"
+    run_dump_test "x86-64-vp2intersect"
+    run_dump_test "x86-64-vp2intersect-intel"
+    run_list_test "x86-64-vp2intersect-inval-bcast"
     run_dump_test "x86-64-fence-as-lock-add-yes"
     run_dump_test "x86-64-fence-as-lock-add-no"
     run_dump_test "x86-64-pr20141"
@@ -941,16 +1044,38 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-nop-2"
     run_dump_test "x86-64-optimize-1"
     run_dump_test "x86-64-optimize-2"
+    run_dump_test "x86-64-optimize-2a"
+    run_dump_test "x86-64-optimize-2b"
     run_dump_test "x86-64-optimize-3"
+    run_dump_test "x86-64-optimize-3b"
     run_dump_test "x86-64-optimize-4"
     run_dump_test "x86-64-optimize-5"
     run_dump_test "x86-64-optimize-6"
+    run_list_test "x86-64-optimize-7a" "-I${srcdir}/$subdir -march=+noavx -al"
+    run_dump_test "x86-64-optimize-7b"
+    run_list_test "x86-64-optimize-8" "-I${srcdir}/$subdir -march=+noavx2 -al"
+    run_dump_test "x86-64-align-branch-1a"
+    run_dump_test "x86-64-align-branch-1b"
+    run_dump_test "x86-64-align-branch-1c"
+    run_dump_test "x86-64-align-branch-1d"
+    run_dump_test "x86-64-align-branch-1e"
+    run_dump_test "x86-64-align-branch-1f"
+    run_dump_test "x86-64-align-branch-1g"
+    run_dump_test "x86-64-align-branch-1h"
+    run_dump_test "x86-64-align-branch-1i"
+    run_dump_test "x86-64-align-branch-2a"
+    run_dump_test "x86-64-align-branch-2b"
+    run_dump_test "x86-64-align-branch-2c"
+    run_dump_test "x86-64-align-branch-4a"
+    run_dump_test "x86-64-align-branch-4b"
+    run_dump_test "x86-64-align-branch-5"
+    run_dump_test "x86-64-align-branch-6"
+    run_dump_test "x86-64-align-branch-7"
+    run_dump_test "x86-64-align-branch-8"
 
     if { ![istarget "*-*-aix*"]
       && ![istarget "*-*-beos*"]
       && ![istarget "*-*-*bsd*"]
-      && ![istarget "*-*-chaos*"]
-      && ![istarget "*-*-kaos*"]
       && ![istarget "*-*-lynx*"]
       && ![istarget "*-*-moss*"]
       && ![istarget "*-*-nto-qnx*"]
@@ -1000,12 +1125,22 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
 
        run_dump_test "x86-64-gotpcrel"
        run_dump_test "x86-64-gotpcrel-no-relax"
+       run_dump_test "x86-64-gotpcrel-2"
 
        run_dump_test "x86-64-addend"
        run_dump_test "x86-64-nop-3"
        run_dump_test "x86-64-nop-4"
        run_dump_test "x86-64-nop-5"
        run_dump_test "x86-64-nop-6"
+
+       run_dump_test "evex-no-scale-64"
+       run_dump_test "x86-64-property-1"
+       run_dump_test "x86-64-property-2"
+
+       if {[istarget "*-*-linux*"]} then {
+           run_dump_test "x86-64-align-branch-3"
+       }
+
     }
 
     set ASFLAGS "$old_ASFLAGS"
This page took 0.036163 seconds and 4 git commands to generate.