[PATCH] D57888: [X86][SSE] Generalize X86ISD::BLENDI support to more value types (WIP)

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 22 17:02:34 PST 2019


rnk added a comment.

In D57888#1402556 <https://reviews.llvm.org/D57888#1402556>, @RKSimon wrote:

> @dlj @sammccall I think I've fixed the root issue now (rL354358 <https://reviews.llvm.org/rL354358>) - please reply on this ticket if there are any more issues. Cheers!


I think I need to revert this again, the following fails after this commit:

  $ cat autofit.cpp
  typedef struct {
    long b, c;
    long d, f
  } g;
  typedef struct {
    long h;
    long height;
    long i;
    long j
  } k;
  struct l {
    int library;
    int *e;
    struct l *n;
    int o;
    k metrics
  };
  struct l *p;
  q() {
    g bbox;
    r(bbox);
    bbox.d = bbox.d & 3;
    bbox.f = bbox.f & 3;
    p->metrics.h = bbox.d - bbox.b;
    p->metrics.height = bbox.f - bbox.c;
    p->metrics.i = bbox.b;
    p->metrics.j = bbox.f;
  }
  
  $ clang -cc1 -triple x86_64-unknown-linux-android -emit-obj -disable-free -main-file-name autofit.c -mrelocation-model pic -pic-level 2 -mthread-model posix -fmerge-all-constants -relaxed-aliasing -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -target-feature +sse4.2 -target-feature +popcnt -momit-leaf-frame-pointer -ffunction-sections -fdata-sections -Oz -std=c11 -ferror-limit 1 -vectorize-slp  -x c -fcomplete-member-pointers -w autofit.cpp
  ...
  clang: /usr/local/google/home/rnk/llvm-project/llvm/include/llvm/CodeGen/MachineInstr.h:418: llvm::MachineOperand &llvm::MachineInstr::getOperand(unsigned int): Assertion `i < getNumOperands() && "getOperand() out of range!"' failed.


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D57888/new/

https://reviews.llvm.org/D57888





More information about the llvm-commits mailing list