[llvm-bugs] [Bug 41682] New: C11 anonymous struct not liked

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41682

Bug ID: 41682
   Summary: C11 anonymous struct not liked
   Product: clang
   Version: 7.0
  Hardware: PC
OS: Linux
Status: NEW
  Severity: normal
  Priority: P
 Component: -New Bugs
  Assignee: unassignedclangb...@nondot.org
  Reporter: tyde...@tybor.com
CC: htmldevelo...@gmail.com, llvm-bugs@lists.llvm.org,
neeil...@live.com, richard-l...@metafoo.co.uk

This code, which I believe is valid C11 code, is not accepted.

struct a {
  int y;
};  /* anonymous */

struct b {
  int x;
  struct a;
  int z;
};

static struct b c = { 20, 30, 50 };
static struct b d = { .z=5, .x=2, .y=3 };

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41681] New: wasm-ld: support --wrap

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41681

Bug ID: 41681
   Summary: wasm-ld: support --wrap
   Product: lld
   Version: unspecified
  Hardware: Other
OS: other
Status: NEW
  Severity: enhancement
  Priority: P
 Component: All Bugs
  Assignee: unassignedb...@nondot.org
  Reporter: dan433...@gmail.com
CC: llvm-bugs@lists.llvm.org, peter.sm...@linaro.org,
s...@chromium.org

The ELF target in lld has a `--wrap=` option which allows users to easily
insert wrapper functions around existing functions. This option would be useful
for the wasm target as well.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 36038] long double is suboptimal on WebAssembly

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=36038

Dan Gohman  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||dan433...@gmail.com
 Resolution|--- |FIXED

--- Comment #5 from Dan Gohman  ---
Yes. Also worth mentioning here is that LLVM has the iprintf optimization for
printf calls that don't use floating point, and in r357552 we've now also added
a __small_printf optimization for printf calls that don't use long double, to
allow participating libc's to avoid linking in the long double emulation code
when it isn't needed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41680] New: [accepts invalid] accepts invalid declared enum

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41680

Bug ID: 41680
   Summary: [accepts invalid] accepts invalid declared enum
   Product: clang
   Version: trunk
  Hardware: PC
OS: Windows NT
Status: NEW
  Severity: enhancement
  Priority: P
 Component: C++
  Assignee: unassignedclangb...@nondot.org
  Reporter: tiagomacar...@gmail.com
CC: blitzrak...@gmail.com, dgre...@apple.com,
erik.pilking...@gmail.com, llvm-bugs@lists.llvm.org,
richard-l...@metafoo.co.uk

I *think* the below is invalid, but after searching around a bit I am not 100%
sure.

https://godbolt.org/z/rK4EZp

http://eel.is/c++draft/dcl.enum

typedef enum A : int A;

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41679] New: --dynamic-table reports garbage when not PT_DYNAMIC is present

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41679

Bug ID: 41679
   Summary: --dynamic-table reports garbage when not PT_DYNAMIC is
present
   Product: tools
   Version: trunk
  Hardware: PC
OS: Linux
Status: NEW
  Severity: enhancement
  Priority: P
 Component: llvm-readobj
  Assignee: unassignedb...@nondot.org
  Reporter: jakehehrl...@google.com
CC: jh7370.2...@my.bristol.ac.uk, llvm-bugs@lists.llvm.org

In working on something where I wasn't outputting a PT_DYNAMIC segment yet but
was outputting a .dynamic section I went to check the contents. I got some
garbage and after some debugging decided that my output must be right. After
checking llvm-readobj I discovered that it does not error out when it doesn't
find the dynamic table and the user asks for it.

It should report that no PT_DYNAMIC is present if the user trys to do this.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41678] New: fatal error: error in backend: Cannot emit physreg copy instruction

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41678

Bug ID: 41678
   Summary: fatal error: error in backend: Cannot emit physreg
copy instruction
   Product: clang
   Version: 7.0
  Hardware: PC
OS: Linux
Status: NEW
  Severity: normal
  Priority: P
 Component: -New Bugs
  Assignee: unassignedclangb...@nondot.org
  Reporter: hgrev...@google.com
CC: htmldevelo...@gmail.com, llvm-bugs@lists.llvm.org,
neeil...@live.com, richard-l...@metafoo.co.uk

Created attachment 21856
  --> https://bugs.llvm.org/attachment.cgi?id=21856=edit
Runscript.

I am running into the following bug when compiling DynamoRIO with clang-7.

fatal error: error in backend: Cannot emit physreg copy instruction
clang: error: clang frontend command failed with exit code 70 (use -v to see
invocation)
clang version 7.0.1-6 (tags/RELEASE_701/final)
Target: i386-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
clang: note: diagnostic msg: PLEASE submit a bug report to
https://bugs.llvm.org/ and include the crash backtrace, preprocessed source,
and associated run script.
clang: note: diagnostic msg: 


clang-7 --version
clang version 7.0.1-6 (tags/RELEASE_701/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin

cat /proc/version
Linux version 4.19.28-2rodete1-amd64 (glinux-t...@google.com) (gcc version
8.0.1 20180218 (experimental) [trunk revision 257787] (Debian 8-20180218-1)) #1
SMP Debian 4.19.28-2rodete1 (2019-03-18 > 2018)

The runscript is attached.
The pre-processed source (big) is here:
https://drive.google.com/open?id=1xsEmVmsC020e_fiSK4FqfaHPtUWccz5D

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41624] [InstSimplify] assertion in SimplifyGEPInst

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41624

listm...@philipreames.com changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|NEW |RESOLVED

--- Comment #3 from listm...@philipreames.com ---
Should be fixed by https://reviews.llvm.org/rL359633.

A better fix would be to remove the wording from the LangRef and fix other
parts of the optimizer.  Being unable to replace a constant w/an undef is
simply wrong.  I'm not motivated to improve FCA optimization, but am happy to
review patches if anyone else is.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41677] New: [clang-cl] ICE instantiating variable template in virtual function with /Zi

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41677

Bug ID: 41677
   Summary: [clang-cl] ICE instantiating variable template in
virtual function with /Zi
   Product: clang
   Version: 8.0
  Hardware: PC
OS: Windows NT
Status: NEW
  Severity: enhancement
  Priority: P
 Component: C++
  Assignee: unassignedclangb...@nondot.org
  Reporter: ca...@carter.net
CC: blitzrak...@gmail.com, dgre...@apple.com,
erik.pilking...@gmail.com, llvm-bugs@lists.llvm.org,
richard-l...@metafoo.co.uk

Created attachment 21854
  --> https://bugs.llvm.org/attachment.cgi?id=21854=edit
Repro files (.cpp & .sh)

Compiling this well-formed program:

template constexpr bool is_same_v = false;
template constexpr bool is_same_v = true;

struct codecvt {
#ifndef WORKAROUND
virtual bool do_always_noconv() const {
return is_same_v;
}
#else
static constexpr bool foo = is_same_v;
virtual bool do_always_noconv() const {
return foo;
}
#endif
};

int main() {
(void) codecvt{};
}

with "clang-cl /Zi" outputs:

C:\Users\cacarter\Downloads>clang-cl /Zi repro.cpp
0x7FF71A5485A0 (0x01B2E03494F8 0x01B2E02ED650
0x7E9B1AC874D6 0x01B2E037A460)
0x7FF71BF495C9 (0x 0x
0x01B2E02EE310 0x01B2E027F618)
0x7FF71A0D4786 (0x01B2E01302A8 0x7FF9B449C44F
0x0020 0x01B2E0130CC0)
0x7FF71A168CF3 (0x01B2E023 0x7FF9B449B9A7
0x01B2E013 0x01B2)
0x7FF71A74185F (0x00297E189B01 0x00297E18A840
0x7E9B1AC87956 0x01B2E037CE90)
0x7FF71A742116 (0x 0x
0x 0x)
0x7FF71A74EC94 (0x 0x00297E18A840
0x01B2E0349CB0 0x7FF71A74D02E)
0x7FF71A88CEF9 (0x 0x
0x 0x7FF71A0E50B6)
0x7FF71A9A1CAD (0x01B2E02B8A80 0x01B2E013
0x01B2E01302AC 0x7FF71A6CD59F)
0x7FF71A9A9104 (0x 0x01B2E03799DA
0x01B2E03799D8 0x7FF71A0D4981)
0x7FF71A996ECE (0x 0x01B2E02B7748
0x 0x7FF71A143588)
0x7FF71A94920A (0x01B2E0349BA1 0x0008
0x00AF 0x7FF71BCAAE46)
0x7FF71A9460B1 (0x01B2E0349D28 0x01B2
0x0006 0x7FF9B449C44F)
0x7FF71A94EDC5 (0x01B2E0349D28 0x7FF71A8B4742
0x01B2E0349D28 0x00AF)
0x7FF71A874D7E (0x7E9B1AC84466 0x01B2E0349D28
0x00AF 0x01B2E02AE620)
0x7FF71A8756A9 (0x 0x
0x 0x)
0x7FF71A703BBD (0xE02B6B01 0x01B2E0349D28
0x01B2E02AE620 0x01B2E0281D70)
0x7FF71A6FDA60 (0x00297E18BFA0 0x01B2E029C5F0
0x01B2E0281C00 0x7FF71A6FD850)
0x7FF71A6F5390 (0x01B2E02B1835 0x00297E18C090
0x01B2E02B1836 0x00297E18BF88)
0x7FF71A6F53B8 (0x01B2E0358B08 0x01B2E0321030
0x01B4018F 0x0008)
0x7FF71A6F4521 (0x7E9B1AC82136 0x00297E18D7A8
0x7E9B1AC83776 0x00297E18D7A8)
0x7FF71C11FF65 (0x 0x7FF71C120295
0x7E9B1AC82166 0x00297E18D7A8)
0x7FF71C11E1E4 (0x01B2E025E6B0 0x7FF71AB378AA
0x0009 0x01B20013)
0x7FF71B5742B3 (0x 0x
0x 0x01B2E0238B60)
0x7FF71AB76B3D (0x00C0 0x002DE02B3ED0
0x01B2E0238B60 0x01B2E027B740)
0x7FF71AB3A897 (0x00297E18DC01 0x
0x 0x0049)
0x7FF71ABC80A8 (0x01B2E028A1B0 0x0001
0x0047 0x01B2E023)
0x7FF719096BBC (0xFDFD 0x00FD
0x0202 0x06B0)
0x7FF7190941D7 (0x 0x
0x 0x)
0x7FF71C1247B0 (0x 0x
0x 0x)
0x7FF9B3BD7BD4 (0x 0x
0x 0x), BaseThreadInitThunk() + 0x14 bytes(s)
0x7FF9B44CCE71 (0x 0x
0x 0x), RtlUserThreadStart() + 0x21 bytes(s)
clang-cl: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 8.0.0 (tags/RELEASE_800/final)
Target: x86_64-pc-windows-msvc
Thread model: posix
InstalledDir: c:\Program Files\LLVM\bin
clang-cl: note: diagnostic msg: PLEASE submit a bug report to
https://bugs.llvm.org/ and include the crash 

[llvm-bugs] [Bug 41676] New: AlignAfterOpenBracket not working when parameters after lambda expression.

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41676

Bug ID: 41676
   Summary: AlignAfterOpenBracket not working when parameters
after lambda expression.
   Product: clang
   Version: 8.0
  Hardware: PC
OS: Linux
Status: NEW
  Severity: enhancement
  Priority: P
 Component: Tooling
  Assignee: unassignedclangb...@nondot.org
  Reporter: jonas.vauthe...@gmail.com
CC: llvm-bugs@lists.llvm.org

Using this sample code:

```c++
void gets_changed()
{
sset_param_async(bl1,
 [one, two](Argument argg) {
something(arg);
foo();
 },
 bla3);
}

void unchanged()
{
sset_param_async(bl1,
 [one, two](Argument argg) {
something(arg);
foo();
 });
}
```

And the following `.clang-format`:

```
Language: Cpp
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
IndentWidth: 4
AlignAfterOpenBracket: Align
ColumnLimit: 80
```

The output of clang-format is:

```
void gets_changed() {
sset_param_async(
bl1,
[one, two](Argument argg) {
something(arg);
foo();
},
bla3);
}

void unchanged() {
sset_param_async(bl1,
 [one, two](Argument argg) {
 something(arg);
 foo();
 });
}
```

As you can see, `unchanged` is not modified, but `gets_changed` gets corrected
by clang-format. However, because of `AlignAfterOpenBracket: Align` in the
config file, it should always behave like `unchanged()`.

It seems like this started happening with clang-format 8+, for functions that
take a parameter (here `bla3`) after a lambda expression.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41655] Finding Bugs in LLVM 8 with PVS-Studio

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41655
Bug 41655 depends on bug 41659, which changed state.

Bug 41659 Summary: X86DisassemblerDecoder.cpp - readPrefixes - always true 
condition
https://bugs.llvm.org/show_bug.cgi?id=41659

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41659] X86DisassemblerDecoder.cpp - readPrefixes - always true condition

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41659

Craig Topper  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|NEW |RESOLVED
 Fixed By Commit(s)||r359597

--- Comment #1 from Craig Topper  ---
Removes the if in r359597

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41221] [meta] 8.0.1 Release Blockers

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41221
Bug 41221 depends on bug 41518, which changed state.

Bug 41518 Summary: Incorrect feature set for Exynos M4
https://bugs.llvm.org/show_bug.cgi?id=41518

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |---

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41518] Incorrect feature set for Exynos M4

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41518

Evandro Menezes  changed:

   What|Removed |Added

 Resolution|FIXED   |---
 Status|RESOLVED|REOPENED

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41655] Finding Bugs in LLVM 8 with PVS-Studio

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41655
Bug 41655 depends on bug 41665, which changed state.

Bug 41665 Summary: SimplifyLibCalls.cpp - optimizeDoubleFP - checking a pointer 
after dereferencing
https://bugs.llvm.org/show_bug.cgi?id=41665

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41665] SimplifyLibCalls.cpp - optimizeDoubleFP - checking a pointer after dereferencing

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41665

Evandro Menezes  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Evandro Menezes  ---
Fixed by r359595.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41675] New: [DebugInfo@O2] Too much indirection added to stack pointer's variable location

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41675

Bug ID: 41675
   Summary: [DebugInfo@O2] Too much indirection added to stack
pointer's variable location
   Product: libraries
   Version: trunk
  Hardware: PC
OS: Linux
Status: NEW
  Keywords: wrong-debug
  Severity: enhancement
  Priority: P
 Component: Common Code Generator Code
  Assignee: unassignedb...@nondot.org
  Reporter: jeremy.morse.l...@gmail.com
CC: apra...@apple.com, chackz0...@gmail.com,
greg.bedw...@sony.com, llvm-bugs@lists.llvm.org,
orlando.hy...@sony.com, paul.robin...@am.sony.com,
stephen.to...@sony.com
Blocks: 38768

Spinning out of bug 41534, where Yuanbo has the following code:

8<
$ cat abc.c
int a;
int *b;
int main() {
  int l_1081 = 1834104526;
  int *c = _1081;
  b = c;
  *b = a = 9;
  optimize_me_not();
}


$ cat outer.c
optimize_me_not() {}
>8

Compiling with clang/llvm r358073 and options "-O2 -g", printing the "c"
variable on any line of the program yields a pointer that doesn't point at the
stack. Examining the location:

8<
   DW_AT_location(0x
  [0x00400486,  0x004004a9): DW_OP_breg7 RSP+4)
   DW_AT_name("c")
>8

Shows that the location of 'c' has grown one too many levels of indirection:
the variable should be the _value_ of RSP+4 (i.e., a pointer at the stack), not
the memory data that the expression points at.

Examining the debug intrinsics for the "c" variable as they change over time,
before isel we have:

   dbg.value(metadata i32* %l_1081, metadata !19, metadata !DIExpression())

Between isel and prologepilog, where frame indexes are finalised, we get:

DBG_VALUE %stack.0.l_1081, $noreg, !19, !DIExpression(), [...]

And from prologepilog to object emission we get:

   DBG_VALUE $rsp, $noreg, !19, !DIExpression(DW_OP_plus_uconst, 4), [...]

My current belief is that switching the DIExpression from being empty to
non-empty also implicitly transforms the DBG_VALUE into being a memory location
description rather than a register location description. However, I'm
unfamiliar with how the DWARF backend treats these things, I'm about 70%
confident.

Adding a DW_OP_stack_value to non-indirect DBG_VALUEs when frameindexes are
rewritten fixes this example but makes a bunch of tests break, in seemly
significant ways. I haven't dug any further, it might be that DW_OP_stack_value
is only needed when the DIExpression is initially empty?


Referenced Bugs:

https://bugs.llvm.org/show_bug.cgi?id=38768
[Bug 38768] [meta][DebugInfo] Umbrella bug for poor debug experiences
-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41674] New: [C++] Initialisation of this from expression with pointer type leads to an invalid bitcast

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41674

Bug ID: 41674
   Summary: [C++] Initialisation of this from expression with
pointer type leads to an invalid bitcast
   Product: clang
   Version: trunk
  Hardware: PC
OS: Linux
Status: NEW
  Severity: normal
  Priority: P
 Component: OpenCL
  Assignee: unassignedclangb...@nondot.org
  Reporter: kevin.pe...@arm.com
CC: anastasia.stul...@arm.com, llvm-bugs@lists.llvm.org

When this is initialiased from an expression with a pointer type, an invalid
bitcast is produced  (it should be an addrspacecast).

The following code allows to reproduce the issue:

-
struct foo {
void init() {
m_data = 1;
}
private:
int m_data;
};

kernel void test(global struct foo* afoo) {
afoo->init();
}
-

I will be submitting a patch that I believe fixes the issue.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 33421] Missing diagnostic for illegal type kernel arguments

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=33421

Anastasia Stulova  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #2 from Anastasia Stulova  ---
Yep! It's fixed now indeed. Thanks for pointing out.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] Issue 12924 in oss-fuzz: llvm/llvm-isel-fuzzer--aarch64-gisel: ASSERT: APFloat::getSizeInBits(Val.getValueAPF().getSemantics()) == EltTy.getSizeInBits(

2019-04-30 Thread sheriff… via monorail via llvm-bugs

Updates:
Labels: Deadline-Approaching

Comment #4 on issue 12924 by sheriff...@chromium.org:  
llvm/llvm-isel-fuzzer--aarch64-gisel: ASSERT:  
APFloat::getSizeInBits(Val.getValueAPF().getSemantics()) ==  
EltTy.getSizeInBits(

https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12924#c4

This bug is approaching its deadline for being fixed, and will be  
automatically derestricted within 7 days. If a fix is planned within 2  
weeks after the deadline has passed, a grace extension can be granted.


- Your friendly Sheriffbot

--
You received this message because:
  1. You were specifically CC'd on the issue

You may adjust your notification preferences at:
https://bugs.chromium.org/hosting/settings

Reply to this email to add a comment.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41673] New: /DISCARD/ section should not be output

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41673

Bug ID: 41673
   Summary: /DISCARD/ section should not be output
   Product: lld
   Version: unspecified
  Hardware: All
OS: All
Status: NEW
  Severity: normal
  Priority: P
 Component: ELF
  Assignee: unassignedb...@nondot.org
  Reporter: anng...@gmail.com
CC: llvm-bugs@lists.llvm.org, peter.sm...@linaro.org

Created attachment 21852
  --> https://bugs.llvm.org/attachment.cgi?id=21852=edit
Test to reproduce issue

A /DISCARD/ section that has an explicit PHDR assignment is present in the
output. /DISCARD/ sections should not be output.

See https://reviews.llvm.org/D61186 for discussion regarding this issue.

Attached a test to reproduce this issue.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41672] New: [X86] Different codegen icmp_eq(and(x, maskbit), maskbit) vs icmp_ne(and(x, maskbit), 0)

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41672

Bug ID: 41672
   Summary: [X86] Different codegen
icmp_eq(and(x,maskbit),maskbit) vs
icmp_ne(and(x,maskbit),0)
   Product: libraries
   Version: trunk
  Hardware: PC
OS: Windows NT
Status: NEW
  Severity: enhancement
  Priority: P
 Component: Backend: X86
  Assignee: unassignedb...@nondot.org
  Reporter: llvm-...@redking.me.uk
CC: craig.top...@gmail.com, llvm-bugs@lists.llvm.org,
llvm-...@redking.me.uk, spatel+l...@rotateright.com

As mentioned on https://reviews.llvm.org/D61189

when performing bit tests:

  icmp_eq(and(x,maskbit),maskbit)

gives different results to:

  icmp_ne(and(x,maskbit),0):

https://godbolt.org/z/78ko0B

define i32 @test(<4 x i32> %a0) {
%1  = icmp slt <4 x i32> %a0, zeroinitializer
%2  = bitcast <4 x i1> %1 to i4
%3  = zext i4 %2 to i32
%4  = and i32 %3, 1
%5  = and i32 %3, 2
%6  = icmp eq i32 %4, 1
%7  = icmp eq i32 %5, 2
%8  = zext i1 %6 to i32
%9  = zext i1 %7 to i32
%10 = and i32 %8, %9
ret i32 %10
}

define i32 @cmp0(<4 x i32> %a0) {
%1  = icmp slt <4 x i32> %a0, zeroinitializer
%2  = bitcast <4 x i1> %1 to i4
%3  = zext i4 %2 to i32
%4  = and i32 %3, 1
%5  = and i32 %3, 2
%6  = icmp ne i32 %4, 0
%7  = icmp ne i32 %5, 0
%8  = zext i1 %6 to i32
%9  = zext i1 %7 to i32
%10 = and i32 %8, %9
ret i32 %10
}


test:
  vmovmskps %xmm0, %ecx
  xorl %eax, %eax
  notl %ecx
  testb $3, %cl
  sete %al
  retq

cmp0:
  vmovmskps %xmm0, %ecx
  movl %ecx, %eax
  andl $2, %eax
  shrl %eax
  andl %ecx, %eax
  retq

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41671] New: libcxx custom build from fuzzer not built PIC (causes regression test failures on AArch64 due to msan enforcing -fPIE on non X86 platforms)

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41671

Bug ID: 41671
   Summary: libcxx custom build from fuzzer not built PIC (causes
regression test failures on AArch64 due to msan
enforcing -fPIE on non X86 platforms)
   Product: compiler-rt
   Version: 7.0
  Hardware: PC
OS: Linux
Status: NEW
  Severity: enhancement
  Priority: P
 Component: fuzzer
  Assignee: unassignedb...@nondot.org
  Reporter: peter.sm...@linaro.org
CC: llvm-bugs@lists.llvm.org

Some recently added libfuzzer tests are failing with link errors on AArch64
when the libcxx/libcxxabi sources are available [*].
msan.text
sigint.test

Both of these tests use -sanitize=memory,fuzzer which on non X86_64 platforms
implicitly sets -fPIE and -pie. The test fails with a link error due to non-PIC
relocations. Tracing through to find where these are coming from it it seems
like libfuzzer is being built -fPIC as is libc++abi, but libc++ is not.

I can make the test fail on x86_64 by adding -fPIE -pie to the line:
RUN: %msan_compiler %S/SleepOneSecondTest.cpp -o %t/LFSIGINT
lib/clang/9.0.0/lib/linux/libclang_rt.fuzzer-x86_64.a(fuzzer.o): relocation
R_X86_64_32 against `.bss' can not be used when making a shared object;
recompile with -fPIC
This may not be a fair test on x86_64, some distributions default to -fPIE -PIE
but it can be overridden.

Assuming that using msan and fuzzer on a non x86_64 platform is a supported
combination. I think that the static libc++ that is merged into libfuzzer needs
to be built -fPIC. If it is not supported then msan.test and sigint.test need
to be disabled on non x86_64 platforms. 

The AArch64 buildbots currently do not have the libcxx/libcxxabi sources
available so they are not showing up the problem as they don't build it. When
the bots switch to the monorepo and LLVM_ENABLE_PROJECTS they will start
failing these tests.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 39936] [X86] [BtVer2] 256-bit integer horizontal add idiom not fully expanded using PHADDD

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=39936

Simon Pilgrim  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED
 Fixed By Commit(s)||r359491

--- Comment #7 from Simon Pilgrim  ---
rL359491 fixes the original 256-bit shuffle issue.

This bug has rambled a little, but I think the main areas are now covered.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41669] New: In some cases llvm-objcopy should allow stripping symbol tables used by a relocation section without --allow-broken-link

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41669

Bug ID: 41669
   Summary: In some cases llvm-objcopy should allow stripping
symbol tables used by a relocation section without
--allow-broken-link
   Product: tools
   Version: trunk
  Hardware: PC
OS: Windows NT
Status: NEW
  Severity: enhancement
  Priority: P
 Component: llvm-objcopy/strip
  Assignee: unassignedb...@nondot.org
  Reporter: gri...@accesssoftek.com
CC: alexander.v.shaposhni...@gmail.com,
jake.h.ehrl...@gmail.com,
jh7370.2...@my.bristol.ac.uk,
llvm-bugs@lists.llvm.org, ruppre...@google.com

This was discussed here:
https://reviews.llvm.org/D60825#1479435

Currently when --allow-broken-links is not given we always report a error when
removing a symbol table used by a dynamic relocation section.
Though it should be possible to do that only in a case when we know that using
symbols from dynamic symbol table.

Technically it also applies to regular relocations, not just dynamic ones.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41371] llvm-objcopy does not check dynamic relocation sections for broken references

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41371

George Rimar  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|NEW |RESOLVED

--- Comment #4 from George Rimar  ---
r359552

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41668] New: unsigned int getFPReg(const llvm::MachineOperand&): Assertion `Reg >= X86::FP0 && Reg <= X86::FP6 && "Expected FP register!"

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41668

Bug ID: 41668
   Summary: unsigned int getFPReg(const llvm::MachineOperand&):
Assertion `Reg >= X86::FP0 && Reg <= X86::FP6 &&
"Expected FP register!"
   Product: libraries
   Version: trunk
  Hardware: PC
OS: Windows NT
Status: NEW
  Severity: enhancement
  Priority: P
 Component: Backend: X86
  Assignee: unassignedb...@nondot.org
  Reporter: llvm-...@redking.me.uk
CC: craig.top...@gmail.com, llvm-bugs@lists.llvm.org,
llvm-...@redking.me.uk, spatel+l...@rotateright.com

Reduced from https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14508

source_filename =
"llvm/test/Transforms/LoopVectorize/X86/vectorize-only-for-real.ll"
target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-apple-macosx10.11.0"

define void @accum() #0 {
entry:
  %B6 = frem double 4.940660e-324, 0.00e+00
  store double %B6, double* undef
  unreachable
}
attributes #0 = { "target-features"="+sse,-avx,-avx2,-sse2" }

llc: /home/simon/LLVM/llvm/lib/Target/X86/X86FloatingPoint.cpp:311: unsigned
int getFPReg(const llvm::MachineOperand&): Assertion `Reg >= X86::FP0 && Reg <=
X86::FP6 && "Expected FP register!"' failed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 41512] Conversion from int to XMM is handled inefficiently on SSE4

2019-04-30 Thread via llvm-bugs
https://bugs.llvm.org/show_bug.cgi?id=41512

Simon Pilgrim  changed:

   What|Removed |Added

 Fixed By Commit(s)||r359545
 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #6 from Simon Pilgrim  ---
Committed at rL359545

-- 
You are receiving this mail because:
You are on the CC list for the bug.___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs