x86-64: Intel64 adjustments for insns dealing with far pointers
[deliverable/binutils-gdb.git] / gas / testsuite / gas / i386 / i386.exp
index 6ea4deef3416f01899807d750a702227f7d7021d..2ca8a941329002c172e18ce6c2dcd3a02f8268ae 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2012-2018 Free Software Foundation, Inc.
+# Copyright (C) 2012-2020 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
@@ -66,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"
@@ -120,8 +128,14 @@ 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_list_test "noreg16"
+    run_dump_test "noreg32"
+    run_list_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"
@@ -200,12 +214,17 @@ 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"
@@ -213,21 +232,25 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     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"
@@ -261,6 +284,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"
@@ -272,12 +296,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"
@@ -331,6 +358,7 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "avx512bw_vl"
     run_dump_test "avx512dq-intel"
     run_dump_test "avx512dq"
+    run_list_test "avx512dq-inval"
     run_dump_test "avx512dq_vl-intel"
     run_dump_test "avx512dq_vl"
     run_dump_test "omit-lock-yes"
@@ -410,6 +438,9 @@ 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"
@@ -437,6 +468,12 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     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"
@@ -455,10 +492,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.
@@ -493,6 +553,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"
@@ -526,15 +589,22 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
        run_dump_test "nop-4"
        run_dump_test "nop-5"
        run_dump_test "nop-6"
+       run_dump_test "unique"
 
        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"
        }
 
@@ -658,6 +728,13 @@ 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 "x86-64-sysenter"
+    run_dump_test "x86-64-sysenter-intel"
+    run_dump_test "x86-64-sysenter-mixed"
+    run_dump_test "x86-64-sysenter-amd"
+    run_list_test "x86-64-sysenter-amd" "-mamd64"
+    run_dump_test "noreg64"
+    run_list_test "noreg64"
     run_list_test "cvtsi2sX"
     run_dump_test "x86-64-sse4_1"
     run_dump_test "x86-64-sse4_1-intel"
@@ -679,6 +756,7 @@ 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"
@@ -686,6 +764,7 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     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"
@@ -714,6 +793,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"
@@ -722,6 +802,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"
@@ -737,11 +820,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"
@@ -766,6 +852,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"
@@ -913,6 +1000,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"
@@ -938,6 +1028,12 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     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"
@@ -956,18 +1052,48 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-movd-intel"
     run_dump_test "x86-64-nop-1"
     run_dump_test "x86-64-nop-2"
+    run_dump_test "x86-64-movsxd"
+    run_dump_test "x86-64-movsxd-intel"
+    run_list_test "x86-64-movsxd-inval" "-al"
+    run_dump_test "x86-64-movsxd-intel64"
+    run_dump_test "x86-64-movsxd-intel64-intel"
+    run_list_test "x86-64-movsxd-intel64-inval" "-mintel64 -al"
     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"
+    if { ![istarget "*-*-darwin*"] } then {
+       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*"]
@@ -1012,19 +1138,29 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
 
        run_dump_test "x86-64-jump"
        run_dump_test "x86-64-branch-2"
-       run_list_test "x86-64-branch-3" "-al -mintel64"
+       run_dump_test "x86-64-branch-3"
        run_list_test "x86-64-branch-4" "-al -mintel64"
+       run_list_test "x86-64-branch-5" "-al"
 
        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 "x86-64-unique"
 
        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.029638 seconds and 4 git commands to generate.