[llvm-bugs] [Bug 43969] New: Clang crashes when incrementing a vector by a float scalar

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Nov 11 12:58:02 PST 2019


https://bugs.llvm.org/show_bug.cgi?id=43969

            Bug ID: 43969
           Summary: Clang crashes when incrementing a vector by a float
                    scalar
           Product: clang
           Version: trunk
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: C
          Assignee: unassignedclangbugs at nondot.org
          Reporter: marksl at synopsys.com
                CC: blitzrakete at gmail.com, dgregor at apple.com,
                    erik.pilkington at gmail.com, llvm-bugs at lists.llvm.org,
                    richard-llvm at metafoo.co.uk

Created attachment 22793
  --> https://bugs.llvm.org/attachment.cgi?id=22793&action=edit
Same f.c source as exists in the description

#include "float.h"

typedef short v2i16 __attribute__((vector_size(4)));
typedef int v2i32 __attribute__((vector_size(8)));
typedef long long v2i64 __attribute__((vector_size(16)));
typedef short v4i16 __attribute__((vector_size(8)));
typedef int v4i32 __attribute__((vector_size(16)));
typedef char v8i8 __attribute__((vector_size(8)));
typedef short v8i16 __attribute__((vector_size(16)));
typedef char v16i8 __attribute__((vector_size(16)));

void func(TYPE a) {
//crash
a+=1.0f;
a-=1.0f;

//OK
a+=1;
a-=1;
}

//Executing clang -DTYPE=v2i32 f.c
// clang-8:
/slowfs/us01dwt2p448/hartman/hartman_1/work/llvm-project/llvm/lib/IR/Instructions.cpp:2168:
static llvm::BinaryOperator*
llvm::BinaryOperator::Create(llvm::Instruction::BinaryOps, llvm::Value*,
llvm::Value*, const llvm::Twine&, llvm::Instruction*): Assertion `S1->getType()
== S2->getType() && "Cannot create binary operator with two operands of
differing type!"' failed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20191111/d9b5b43b/attachment.html>


More information about the llvm-bugs mailing list