138 lines · plain
1// REQUIRES: target=x86{{.*}}2 3// RUN: mlir-opt -llvm-target-to-data-layout -split-input-file %s | FileCheck --check-prefix=DATA-LAYOUT %s4// RUN: mlir-opt -llvm-target-to-target-features -split-input-file %s | FileCheck --check-prefix=TARGET-FEATURES %s5 6// DATA-LAYOUT: module attributes7// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec8// DATA-LAYOUT-SAME: "dlti.endianness" = "little"9// DATA-LAYOUT-SAME: llvm.target = #llvm.target<10// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"11// DATA-LAYOUT-SAME: chip = ""12// DATA-LAYOUT-NOT: features =13 14// TARGET-FEATURES: module attributes15// TARGET-FEATURES-NOT: dlti.dl_spec16// TARGET-FEATURES-SAME: llvm.target = #llvm.target<17// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"18// TARGET-FEATURES-SAME: chip = ""19// TARGET-FEATURES-SAME: features = <[20// TARGET-FEATURES-SAME: +64bit21// TARGET-FEATURES-NOT: +avx22// TARGET-FEATURES-SAME: +sse23// TARGET-FEATURES-NOT: +mmx24 25module attributes { llvm.target = #llvm.target<triple = "x86_64-unknown-linux",26 chip = ""> } {27}28 29// -----30 31// DATA-LAYOUT: module attributes32// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec33// DATA-LAYOUT-SAME: "dlti.endianness" = "little"34// DATA-LAYOUT-SAME: llvm.target = #llvm.target<35// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"36// DATA-LAYOUT-SAME: chip = ""37// DATA-LAYOUT-SAME: features = <["+mmx", "+sse"]>38 39// TARGET-FEATURES: module attributes40// TARGET-FEATURES-NOT: dlti.dl_spec41// TARGET-FEATURES-SAME: llvm.target = #llvm.target<42// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"43// TARGET-FEATURES-SAME: chip = ""44// TARGET-FEATURES-SAME: features = <[45// TARGET-FEATURES-SAME: +64bit46// TARGET-FEATURES-NOT: +avx47// TARGET-FEATURES-SAME: +mmx48// TARGET-FEATURES-SAME: +sse49 50module attributes { llvm.target = #llvm.target<triple = "x86_64-unknown-linux",51 chip = "",52 features = <["+mmx", "+sse"]>> } {53}54 55// -----56 57// DATA-LAYOUT: module attributes58// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec59// DATA-LAYOUT-SAME: "dlti.endianness" = "little"60// DATA-LAYOUT-SAME: llvm.target = #llvm.target<61// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"62// DATA-LAYOUT-SAME: chip = "skylake"63// DATA-LAYOUT-NOT: features =64 65// TARGET-FEATURES: module attributes66// TARGET-FEATURES-NOT: dlti.dl_spec67// TARGET-FEATURES-SAME: llvm.target = #llvm.target<68// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"69// TARGET-FEATURES-SAME: chip = "skylake"70// TARGET-FEATURES-SAME: features = <[71// TARGET-FEATURES-SAME: +64bit72// TARGET-FEATURES-SAME: +avx73// TARGET-FEATURES-SAME: +avx274// TARGET-FEATURES-NOT: +avx512f75// TARGET-FEATURES-SAME: +mmx76// TARGET-FEATURES-SAME: +sse77 78module attributes { llvm.target = #llvm.target<triple = "x86_64-unknown-linux",79 chip = "skylake"> } {80}81 82// -----83 84// DATA-LAYOUT: module attributes85// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec86// DATA-LAYOUT-SAME: "dlti.endianness" = "little"87// DATA-LAYOUT-SAME: llvm.target = #llvm.target<88// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"89// DATA-LAYOUT-SAME: chip = "skylake"90// DATA-LAYOUT-SAME: features = <["-sse", "-avx"]>91 92// TARGET-FEATURES: module attributes93// TARGET-FEATURES-NOT: dlti.dl_spec94// TARGET-FEATURES-SAME: llvm.target = #llvm.target<95// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"96// TARGET-FEATURES-SAME: chip = "skylake"97// TARGET-FEATURES-SAME: features = <[98// TARGET-FEATURES-SAME: +64bit99// TARGET-FEATURES-NOT: +avx100// TARGET-FEATURES-NOT: +avx2101// TARGET-FEATURES-SAME: +mmx102// TARGET-FEATURES-NOT: +sse103 104module attributes { llvm.target = #llvm.target<triple = "x86_64-unknown-linux",105 chip = "skylake",106 features = <["-sse", "-avx"]>> } {107}108 109// -----110 111// DATA-LAYOUT: module attributes112// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec113// DATA-LAYOUT-SAME: "dlti.endianness" = "little"114// DATA-LAYOUT-SAME: index = 32115// DATA-LAYOUT-SAME: llvm.target = #llvm.target<116// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"117// DATA-LAYOUT-SAME: chip = "skylake"118// DATA-LAYOUT-SAME: features = <["-mmx", "+avx512f"]>119 120// TARGET-FEATURES: module attributes121// TARGET-FEATURES-SAME: #dlti.dl_spec<index = 32 : i64>122// TARGET-FEATURES-SAME: llvm.target = #llvm.target<123// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"124// TARGET-FEATURES-SAME: chip = "skylake"125// TARGET-FEATURES-SAME: features = <[126// TARGET-FEATURES-SAME: +64bit127// TARGET-FEATURES-SAME: +avx128// TARGET-FEATURES-SAME: +avx2129// TARGET-FEATURES-SAME: +avx512f130// TARGET-FEATURES-NOT: +mmx131// TARGET-FEATURES-SAME: +sse132 133module attributes { dlti.dl_spec = #dlti.dl_spec<index = 32>,134 llvm.target = #llvm.target<triple = "x86_64-unknown-linux",135 chip = "skylake",136 features = <["-mmx", "+avx512f"]>> } {137}138