https://bugs.llvm.org/show_bug.cgi?id=32345
Bug ID: 32345
Summary: Assertion `Op.getScalarValueSizeInBits() == BitWidth
&& "Mask size mismatches value type size!"' failed
with -O0.
Product: new-bugs
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: new bugs
Assignee: unassignedb...@nondot.org
Reporter: vsevolod.livins...@frtk.ru
CC: llvm-bugs@lists.llvm.org
Created attachment 18130
--> https://bugs.llvm.org/attachment.cgi?id=18130&action=edit
Reproducer.
Clang fails with assertion with -O0 option.
Reproducer:
extern const unsigned short var_22;
extern unsigned short var_27;
extern unsigned short var_88;
void foo() {
long a = var_22 ^ var_27 ^ var_27;
char b = long(var_22 ^ var_27 ^ var_27) >> var_27 - 16610;
short c = char(var_88);
}
Error:
>$ clang++ -w -O0 -c repr.cpp
llvm/llvm-trunk/lib/CodeGen/SelectionDAG/TargetLowering.cpp:505: bool
llvm::TargetLowering::SimplifyDemandedBits(llvm::SDValue, const llvm::APInt&,
llvm::APInt&, llvm::APInt&, llvm::TargetLowering::TargetLoweringOpt&, unsigned
int, bool) const: Assertion `Op.getScalarValueSizeInBits() == BitWidth && "Mask
size mismatches value type size!"' failed.
(......)
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module 'repr.cpp'.
4. Running pass 'X86 DAG->DAG Instruction Selection' on function
'@_Z3foov'
LLVM version:
clang version 5.0.0 (trunk 298108)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/vsevolod/workspace/llvm/bin-trunk/bin
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/5
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/5.4.0
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/6.0.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.4.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.0.0
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.4.0
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@mx32
Selected multilib: .;@m64
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs