[PATCH] D52441: [CodeGen] Update min-legal-vector width based on function argument and return types

Craig Topper via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Sep 24 15:34:23 PDT 2018


craig.topper created this revision.
craig.topper added reviewers: rnk, chandlerc, rsmith, echristo.
Herald added a reviewer: javed.absar.

This is a continuation of my patches to inform the X86 backend about what the largest IR types are in the function so that we can restrict the backend type legalizer to prevent 512-bit vectors on SKX when -mprefer-vector-width=256 is specified if no explicit 512 bit vectors were specified by the user.

This patch updates the vector width based on the argument and return types of the current function and from the types of any functions it calls. This is intended to make sure the backend type legalizer doesn't disturb any types that are required for ABI.


https://reviews.llvm.org/D52441

Files:
  lib/CodeGen/CGCall.cpp
  lib/CodeGen/CodeGenFunction.cpp
  test/CodeGen/aarch64-neon-3v.c
  test/CodeGen/aarch64-neon-across.c
  test/CodeGen/aarch64-neon-fma.c
  test/CodeGen/aarch64-neon-ldst-one.c
  test/CodeGen/aarch64-neon-scalar-copy.c
  test/CodeGen/aarch64-neon-scalar-x-indexed-elem.c
  test/CodeGen/aarch64-neon-tbl.c
  test/CodeGen/aarch64-neon-vget.c
  test/CodeGen/aarch64-poly64.c
  test/CodeGen/arm-neon-fma.c
  test/CodeGen/arm-neon-numeric-maxmin.c
  test/CodeGen/arm-neon-vcvtX.c
  test/CodeGen/arm64_vdupq_n_f64.c
  test/CodeGen/x86-vector-width.c
  test/CodeGenOpenCL/fpmath.cl

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D52441.166771.patch
Type: text/x-patch
Size: 269050 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180924/d9a7659c/attachment-0001.bin>


More information about the cfe-commits mailing list