From bugzilla-daemon at llvm.org Wed Apr 1 02:28:51 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 09:28:51 +0000
Subject: [LLVMbugs] [Bug 23096] New: opt -gvn crash
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23096
Bug ID: 23096
Summary: opt -gvn crash
Product: new-bugs
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: bruce.mitchener at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14130
--> https://llvm.org/bugs/attachment.cgi?id=14130&action=edit
Minimized test case to reproduce crash
When running "opt -gvn" against the attached IR, it crashes with infinite
recursion:
frame #9000: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9001: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9002: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9003: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9004: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9005: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9006: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9007: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9008: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9009: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9010: 0x0000000100513963
opt`llvm::PHITransAddr::PHITranslateSubExpr(this=0x00007fff5fbfa7d0,
V=0x0000000103405b80, CurBB=0x00000001034044e0, PredBB=0x00000001034044e0,
DT=0x0000000000000000) + 1827 at PHITransAddr.cpp:220
frame #9011: 0x000000010051468e
opt`llvm::PHITransAddr::PHITranslateValue(this=0x00007fff5fbfa7d0,
CurBB=0x00000001034044e0, PredBB=0x00000001034044e0, DT=0x0000000000000000) +
158 at PHITransAddr.cpp:322
frame #9012: 0x00000001004fcce4
opt`llvm::MemoryDependenceAnalysis::getNonLocalPointerDepFromBB(this=0x0000000103401f10,
Pointer=0x00007fff5fbfc030, Loc=0x00007fff5fbfb198, isLoad=true,
StartBB=0x00000001034044e0, Result=0x00007fff5fbfd100,
Visited=0x00007fff5fbfc778, SkipFirstBlock=false) + 7620 at
MemoryDependenceAnalysis.cpp:1240
frame #9013: 0x00000001004fd00f
opt`llvm::MemoryDependenceAnalysis::getNonLocalPointerDepFromBB(this=0x0000000103401f10,
Pointer=0x00007fff5fbfc7b8, Loc=0x00007fff5fbfc890, isLoad=true,
StartBB=0x00000001034047b0, Result=0x00007fff5fbfd100,
Visited=0x00007fff5fbfc778, SkipFirstBlock=false) + 8431 at
MemoryDependenceAnalysis.cpp:1301
frame #9014: 0x00000001004fae3f
opt`llvm::MemoryDependenceAnalysis::getNonLocalPointerDependency(this=0x0000000103401f10,
Loc=0x00007fff5fbfc890, isLoad=true, FromBB=0x00000001034047b0,
Result=0x00007fff5fbfd100) + 367 at MemoryDependenceAnalysis.cpp:876
frame #9015: 0x0000000100f77230 opt`(anonymous
namespace)::GVN::processNonLocalLoad(this=0x0000000103402dc0,
LI=0x0000000103406258) + 192 at GVN.cpp:1711
frame #9016: 0x0000000100f73cb8 opt`(anonymous
namespace)::GVN::processLoad(this=0x0000000103402dc0, L=0x0000000103406258) +
1432 at GVN.cpp:1905
frame #9017: 0x0000000100f72f3f opt`(anonymous
namespace)::GVN::processInstruction(this=0x0000000103402dc0,
I=0x0000000103406258) + 367 at GVN.cpp:2227
frame #9018: 0x0000000100f72b8b opt`(anonymous
namespace)::GVN::processBlock(this=0x0000000103402dc0, BB=0x00000001034047b0) +
251 at GVN.cpp:2402
frame #9019: 0x0000000100f6cc51 opt`(anonymous
namespace)::GVN::iterateOnFunction(this=0x0000000103402dc0,
F=0x0000000103404050) + 1361 at GVN.cpp:2657
frame #9020: 0x0000000100f6c5c2 opt`(anonymous
namespace)::GVN::runOnFunction(this=0x0000000103402dc0, F=0x0000000103404050) +
626 at GVN.cpp:2360
frame #9021: 0x0000000100b5429b
opt`llvm::FPPassManager::runOnFunction(this=0x0000000103408a30,
F=0x0000000103404050) + 427 at LegacyPassManager.cpp:1541
frame #9022: 0x0000000100b545a8
opt`llvm::FPPassManager::runOnModule(this=0x0000000103408a30,
M=0x0000000103401410) + 104 at LegacyPassManager.cpp:1561
frame #9023: 0x0000000100b54fb4 opt`(anonymous
namespace)::MPPassManager::runOnModule(this=0x00000001034041f0,
M=0x0000000103401410) + 1412 at LegacyPassManager.cpp:1619
frame #9024: 0x0000000100b5485e
opt`llvm::legacy::PassManagerImpl::run(this=0x0000000103401770,
M=0x0000000103401410) + 302 at LegacyPassManager.cpp:1726
frame #9025: 0x0000000100b55731
opt`llvm::legacy::PassManager::run(this=0x00007fff5fbfeca0,
M=0x0000000103401410) + 33 at LegacyPassManager.cpp:1763
frame #9026: 0x000000010003a946 opt`main(argc=3, argv=0x00007fff5fbff9b8) +
12630 at opt.cpp:716
frame #9027: 0x00007fff87ac35c9 libdyld.dylib`start + 1
frame #9028: 0x00007fff87ac35c9 libdyld.dylib`start + 1
This happens with: LLVM 3.6.0 release, trunk as of earlier this week and the
emscripten-fastcomp branch. (That means it probably also happens with current
PNaCl.)
The crash in our codebase happens in the implementation of wcsstr() which comes
from the MUSL libc as used by emscripten. I will attach the IR for that
function in case it helps to see that in addition to the minimized test case.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 09:12:32 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 16:12:32 +0000
Subject: [LLVMbugs] [Bug 23097] New: Invalid code generation (regression) in
pass-by-value on PowerPC
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23097
Bug ID: 23097
Summary: Invalid code generation (regression) in pass-by-value
on PowerPC
Product: clang
Version: 3.6
Hardware: Other
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: andyg1001 at hotmail.co.uk
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14132
--> https://llvm.org/bugs/attachment.cgi?id=14132&action=edit
Simplified test case
I've spotted a regression between clang 3.4.1 and 3.6.0 when compiling for
powerpc (compiling for x86 is ok). A simplified test case is attached. The
problem occurs on return from test() where the copies of A are destructed.
Compiling the test case with clang 3.4.1 produces this output:
1 [0xbf896c08::0x10012008] 1
2 [0xbf896c00::0x10012018] 1
1 [0xbf896bf0::0x10012008] 2
2 [0xbf896be8::0x10012018] 2
1 [0xbf896bf0::0x10012018] 3
2 [0xbf896be8::0x10012018] 3
1 [0xbf896c08::0x10012008] 1
2 [0xbf896c00::0x10012018] 1
Compiling with clang 3.6.0 produces this output:
1 [0xbf969b38::0x10012008] 1
2 [0xbf969b30::0x10012018] 1
1 [0xbf969b08::0x10012008] 2
2 [0xbf969b0c::0x10012018] 2
1 [0xbf969b08::0x10012018] 3
2 [0xbf969b0c::0x10012018] 3
1 [0xbf969b38::0x10012008] 0
2 [0xbf969b30::0x10012018] 2
Also attached are the outputs from the compiler in both llvm and ppc assembly
code, in case this is useful.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 09:52:24 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 16:52:24 +0000
Subject: [LLVMbugs] [Bug 22963] clang++ release 3.6 fails to compile a file
when using -target i386-pc-windows-msvc-elf
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=22963
Reid Kleckner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #3 from Reid Kleckner ---
I made the 32-bit data layouts match in r233819. We can roll it into the next
point release.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 09:56:06 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 16:56:06 +0000
Subject: [LLVMbugs] [Bug 23098] New: Less efficient encoding of shl using
direct object emission
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23098
Bug ID: 23098
Summary: Less efficient encoding of shl using direct object
emission
Product: libraries
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: MC
Assignee: unassignedbugs at nondot.org
Reporter: russell_gallop at sn.scee.net
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
For the following source a less efficient instruction encoding is generated for
direct object emission than outputting asm (with -via-file-asm). Using r232944.
This is the case as -O0/-O1/-O2/-O3.
$ cat test.c
int a;
void fn1() { a = a << 1 & 255; }
$ clang -c test.c -O3 -o test.o && objdump -d test.o
test.o: file format elf64-x86-64
Disassembly of section .text:
0000000000000000 :
0: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 6
6: 83 e0 7f and $0x7f,%eax
9: c1 e0 01 shl $0x1,%eax
c: 89 05 00 00 00 00 mov %eax,0x0(%rip) # 12
12: c3 retq
$ clang -c test.c -O3 -via-file-asm -o tests.o && objdump -d tests.o
tests.o: file format elf64-x86-64
Disassembly of section .text:
0000000000000000 :
0: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 6
6: 83 e0 7f and $0x7f,%eax
9: d1 e0 shl %eax
b: 89 05 00 00 00 00 mov %eax,0x0(%rip) # 11
11: c3 retq
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 12:09:30 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 19:09:30 +0000
Subject: [LLVMbugs] [Bug 23098] Less efficient encoding of shl using direct
object emission
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23098
Benjamin Kramer changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |benny.kra at gmail.com
Resolution|--- |FIXED
--- Comment #1 from Benjamin Kramer ---
This is not really an assembler problem, we were emitting a suboptimal
instruction from the instruction selector. That is fixed in r233832, we're now
emitting an addl which as small as the smaller version of shl but has higher
throughput on some microarchs.
$ clang -c test.c -O3 -o test.o && objdump -d test.o
test.o: file format elf64-x86-64
Disassembly of section .text:
0000000000000000 :
0: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 6
6: 83 e0 7f and $0x7f,%eax
9: 01 c0 add %eax,%eax
b: 89 05 00 00 00 00 mov %eax,0x0(%rip) # 11
11: c3 retq
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 12:28:18 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 19:28:18 +0000
Subject: [LLVMbugs] [Bug 23099] New: std::future regression
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23099
Bug ID: 23099
Summary: std::future regression
Product: clang
Version: 3.6
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++11
Assignee: unassignedclangbugs at nondot.org
Reporter: dirk.ribbrock at mathematik.tu-dortmund.de
CC: dgregor at apple.com, llvmbugs at cs.uiuc.edu
Classification: Unclassified
Since using clang 3.6.0, the following code crashes with
"Illegal instruction (core dumped)"
Whereas clang 3.5.0 returns the correct output value "1"
//file future.cpp
#include
#include
#include
int bla()
{
return 1;
}
int main()
{
std::future f = std::async(std::launch::async, bla);
f.wait();
std::cout<
From bugzilla-daemon at llvm.org Wed Apr 1 13:01:55 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 20:01:55 +0000
Subject: [LLVMbugs] [Bug 23100] New: Suboptimal encoding of 64 bit and with
small immediate
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23100
Bug ID: 23100
Summary: Suboptimal encoding of 64 bit and with small immediate
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: enhancement
Priority: P
Component: Backend: X86
Assignee: unassignedbugs at nondot.org
Reporter: benny.kra at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
$ cat t.c
long long foo(long long x) { return x & 42; }
$ clang -S -o - t.c -O3|grep and|llvm-mc -show-encoding
andq $42, %rdi # encoding: [0x48,0x83,0xe7,0x2a]
$ gcc -S -o - t.c -O3|grep and|llvm-mc -show-encoding
andl $42, %eax # encoding: [0x83,0xe0,0x2a]
We have a pattern for this in X86InstrCompiler.td but it's not getting selected
for some reason.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 13:05:59 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 20:05:59 +0000
Subject: [LLVMbugs] [Bug 23101] New: Clang crash with -Wdocumentation during
delayed typo correction
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23101
Bug ID: 23101
Summary: Clang crash with -Wdocumentation during delayed typo
correction
Product: clang
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: Frontend
Assignee: unassignedclangbugs at nondot.org
Reporter: Yunzhong_Gao at playstation.sony.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Hi,
The following buggy test causes clang to crash with -Wdocumentation. could
someone take a look?
// bug.c
//typedef long long __v2di __attribute__ ((__vector_size__ (16))); // missing
typedef typedef long long __m128i __attribute__((__vector_size__(16)));
/// \param __xx
/// yes, this is a typo
int test(__m128i __x)
{
return foo((__v2di)__x);
}
// end bug.c
$ build/Debug+Asserts/bin/clang -cc1 -Wdocumentation -S -o /dev/null bug.c
bug.c:4:12: warning: parameter '__xx' not found in the function declaration ///
\param __xx
^~~~
bug.c:4:12: note: did you mean '__x'?
/// \param __xx
^~~~
__x
bug.c:8:10: warning: implicit declaration of function 'foo' is invalid in C99
return foo((__v2di)__x);
^
bug.c:8:22: error: expected ')'
return foo((__v2di)__x);
^
bug.c:8:13: note: to match this '('
return foo((__v2di)__x);
^
clang: llvm/tools/clang/lib/Sema/Sema.cpp:273: clang::Sema::~Sema(): Assertion
`DelayedTypos.empty() && "Uncorrected typos!"' failed.
0 clang 0x000000000443ef80
llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 44
1 clang 0x000000000443f295
2 clang 0x000000000443dd95
3 libpthread.so.0 0x00007f90c2781340
4 libc.so.6 0x00007f90c19bdf79 gsignal + 57
5 libc.so.6 0x00007f90c19c1388 abort + 328
6 libc.so.6 0x00007f90c19b6e36
7 libc.so.6 0x00007f90c19b6ee2
8 clang 0x00000000019e05d2 clang::Sema::~Sema() + 500
9 clang 0x00000000012e5f84
std::default_delete::operator()(clang::Sema*) const + 34
10 clang 0x00000000012ddf2c std::unique_ptr >::reset(clang::Sema*) + 80
11 clang 0x00000000012fdb8f
clang::CompilerInstance::setSema(clang::Sema*) + 39
12 clang 0x000000000133c4a3 clang::FrontendAction::EndSourceFile() +
283
13 clang 0x000000000130172c
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 784
14 clang 0x00000000012c31eb
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 993
15 clang 0x00000000012af2a8 cc1_main(llvm::ArrayRef,
char const*, void*) + 770
16 clang 0x00000000012bcab8
17 clang 0x00000000012bd09a main + 1069
18 libc.so.6 0x00007f90c19a8ec5 __libc_start_main + 245
19 clang 0x00000000012ada09
Stack dump:
0. Program arguments: build/Debug+Asserts/bin/clang -cc1 -Wdocumentation -S
-o /dev/null bug.c
Aborted (core dumped)
$ build/Debug+Asserts/bin/clang --version clang version 3.7.0 (trunk 233464)
Target: x86_64-unknown-linux-gnu
Thread model: posix
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 13:31:55 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 20:31:55 +0000
Subject: [LLVMbugs] [Bug 23102] New: Typeinfo references not merged
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23102
Bug ID: 23102
Summary: Typeinfo references not merged
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Common Code Generator Code
Assignee: unassignedbugs at nondot.org
Reporter: rafael.espindola at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Given
test.cpp:
------------------------
void f();
void g() {
try {
f();
} catch (int x) {
}
}
-------------------------
test2.cpp:
--------------------------
void f();
void h() {
try {
f();
} catch (int x) {
}
}
------------------------------
With gcc
$ gcc test.cpp test2.cpp -O3 -fPIC -shared -o test.so
$ readelf -r test.so | grep ZTI
000000001c88 000b00000001 R_X86_64_64 0000000000000000 _ZTIi + 0
with clang:
$ clang test.cpp test2.cpp -O3 -fPIC -shared -o test.so
$ readelf -r test.so | grep ZTI
000000001bf0 000700000001 R_X86_64_64 0000000000000000 _ZTIi + 0
000000001bf8 000700000001 R_X86_64_64 0000000000000000 _ZTIi + 0
The difference is that gcc puts the reference to the typeinfo in a comdat
section:
.section .data.DW.ref._ZTIi,"awG", at progbits,DW.ref._ZTIi,comdat
...
.quad _ZTIi
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 14:47:11 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 21:47:11 +0000
Subject: [LLVMbugs] [Bug 23103] New: Crash in Register Scavenger
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23103
Bug ID: 23103
Summary: Crash in Register Scavenger
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
Assignee: unassignedclangbugs at nondot.org
Reporter: sunil_srivastava at playstation.sony.com
CC: dgregor at apple.com, llvmbugs at cs.uiuc.edu
Classification: Unclassified
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 16:55:15 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 23:55:15 +0000
Subject: [LLVMbugs] [Bug 21292] __attribute__((used)) possibly ignored for
static function with inline assembler?
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=21292
Dan Albert changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|INVALID |---
--- Comment #2 from Dan Albert ---
I just checked and it's still affecting Android (reverting
https://android-review.googlesource.com/#/c/110170/ and trying to build libc++
for the generic ARM target is enough to repro).
Will have to do some more digging to figure out what we do differently that is
causing this though.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 16:55:17 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 01 Apr 2015 23:55:17 +0000
Subject: [LLVMbugs] [Bug 21420] [Meta] Android+Clang platform support
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=21420
Bug 21420 depends on bug 21292, which changed state.
Bug 21292 Summary: __attribute__((used)) possibly ignored for static function with inline assembler?
https://llvm.org/bugs/show_bug.cgi?id=21292
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|INVALID |---
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 17:13:36 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 00:13:36 +0000
Subject: [LLVMbugs] [Bug 23104] New: Copy relocation against protected
symbol doesn't work
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23104
Bug ID: 23104
Summary: Copy relocation against protected symbol doesn't work
Product: new-bugs
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: hjl.tools at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Protected data symbol means that it can't be preempted. It doesn't mean
its address won't be external. This is true for pointer to protected
function. With copy relocation, address of protected data defined in the
shared library may also be external. We only know that for sure at
run-time. On Linux/x86-64, with linker from binutils master branch:
[hjl at gnu-6 pr65248]$ cat bar.c
int a;
__attribute__((visibility("protected"))) int a;
void
bar ()
{
a = 30;
}
[hjl at gnu-6 pr65248]$ make
CC=/export/build/gnu/llvm-clang/build-x86_64-linux/bin/clang libbar.so
/export/build/gnu/llvm-clang/build-x86_64-linux/bin/clang -O3 -fpic -c -o
bar.o bar.c
/export/build/gnu/llvm-clang/build-x86_64-linux/bin/clang -shared -o libbar.so
bar.o
/usr/local/bin/ld: bar.o: relocation R_X86_64_PC32 against protected symbol `a'
can not be used when making a shared object
/usr/local/bin/ld: final link failed: Bad value
clang-3.7: error: linker command failed with exit code 1 (use -v to see
invocation)
make: *** [libbar.so] Error 1
[hjl at gnu-6 pr65248]$
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 23:14:26 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 06:14:26 +0000
Subject: [LLVMbugs] [Bug 21421] relocations for new removed when
optimization turned on
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=21421
Kevin Qin changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |kevinqindev at gmail.com
Resolution|--- |INVALID
--- Comment #1 from Kevin Qin ---
As discussed in https://groups.google.com/forum/#!topic/llvm-dev/hRO_qRHFst4,
this is valid optimization from llvm instruction combining.
To avoid llvm optimizing this, please compile it with -ffreestanding.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Wed Apr 1 23:14:27 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 06:14:27 +0000
Subject: [LLVMbugs] [Bug 21420] [Meta] Android+Clang platform support
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=21420
Bug 21420 depends on bug 21421, which changed state.
Bug 21421 Summary: relocations for new removed when optimization turned on
https://llvm.org/bugs/show_bug.cgi?id=21421
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |INVALID
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 00:33:28 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 07:33:28 +0000
Subject: [LLVMbugs] [Bug 23105] New: C: allow conversion of pointer to
arrays to pointers to const arrays
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23105
Bug ID: 23105
Summary: C: allow conversion of pointer to arrays to pointers
to const arrays
Product: clang
Version: unspecified
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: Frontend
Assignee: unassignedclangbugs at nondot.org
Reporter: uecker at eecs.berkeley.edu
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Starting with version 5, gcc will not warn anymore about incompatible pointer
types when converting a pointer to an array to a pointer to a const array. (The
underlying issue in the C standard is that the qualifier is attached to the
element type, so the usual rule which allows addition of a qualifier to a
pointer target does not apply). Please also consider this change for clang.
This would allow reasonable code such as the following to work without
warnings:
void foo(const double input[3][3]);
double b[3][3];
foo(b);
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 05:43:24 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 12:43:24 +0000
Subject: [LLVMbugs] [Bug 23106] New: Division followed by modulo generates
longer machine code than vice versa
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23106
Bug ID: 23106
Summary: Division followed by modulo generates longer machine
code than vice versa
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Scalar Optimizations
Assignee: unassignedbugs at nondot.org
Reporter: ed at 80386.nl
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Consider the following piece of C code:
#include
struct tv {
int64_t tv_sec;
int32_t tv_usec;
};
void convert1(uint64_t ts, struct tv *tv) {
tv->tv_sec = ts / 1000000000;
tv->tv_usec = (ts % 1000000000) / 1000;
}
void convert2(uint64_t ts, struct tv *tv) {
ts /= 1000;
tv->tv_sec = ts / 1000000;
tv->tv_usec = ts % 1000000;
}
Essentially they are functions that convert a UNIX timestamp in nanoseconds to
a struct timeval-like structure (with microseconds precision). Both functions
should be identical.
Anyway, if I compare the machine code generated by Clang r233700 with -O3, it
generates the following machine code:
0000000000000000 :
0: 55 push %rbp
1: 48 89 e5 mov %rsp,%rbp
4: 48 89 f8 mov %rdi,%rax
7: 48 c1 e8 09 shr $0x9,%rax
b: 48 b9 53 5a 9b a0 2f mov $0x44b82fa09b5a53,%rcx
12: b8 44 00
15: 48 f7 e1 mul %rcx
18: 48 c1 ea 0b shr $0xb,%rdx
1c: 48 89 16 mov %rdx,(%rsi)
1f: 48 69 c2 00 ca 9a 3b imul $0x3b9aca00,%rdx,%rax
26: 48 29 c7 sub %rax,%rdi
29: 48 c1 ef 03 shr $0x3,%rdi
2d: 48 b9 cf f7 53 e3 a5 mov $0x20c49ba5e353f7cf,%rcx
34: 9b c4 20
37: 48 89 f8 mov %rdi,%rax
3a: 48 f7 e1 mul %rcx
3d: 48 c1 ea 04 shr $0x4,%rdx
41: 89 56 08 mov %edx,0x8(%rsi)
44: 5d pop %rbp
45: c3 retq
0000000000000000 :
0: 55 push %rbp
1: 48 89 e5 mov %rsp,%rbp
4: 48 89 f8 mov %rdi,%rax
7: 48 c1 e8 03 shr $0x3,%rax
b: 48 b9 cf f7 53 e3 a5 mov $0x20c49ba5e353f7cf,%rcx
12: 9b c4 20
15: 48 f7 e1 mul %rcx
18: 48 89 d1 mov %rdx,%rcx
1b: 48 c1 e9 04 shr $0x4,%rcx
1f: 48 c1 ef 09 shr $0x9,%rdi
23: 48 ba 53 5a 9b a0 2f mov $0x44b82fa09b5a53,%rdx
2a: b8 44 00
2d: 48 89 f8 mov %rdi,%rax
30: 48 f7 e2 mul %rdx
33: 48 c1 ea 0b shr $0xb,%rdx
37: 48 89 16 mov %rdx,(%rsi)
3a: 48 ba db 34 b6 d7 82 mov $0x431bde82d7b634db,%rdx
41: de 1b 43
44: 48 89 c8 mov %rcx,%rax
47: 48 f7 e2 mul %rdx
4a: 48 c1 ea 12 shr $0x12,%rdx
4e: 69 c2 40 42 0f 00 imul $0xf4240,%edx,%eax
54: 29 c1 sub %eax,%ecx
56: 89 4e 08 mov %ecx,0x8(%rsi)
59: 5d pop %rbp
5a: c3
As a 30% increase in code size is not negligible, I thought it would make sense
to file a bug. Maybe there room for an optimization here?
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 07:09:03 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 14:09:03 +0000
Subject: [LLVMbugs] [Bug 23107] New: Constructor inheritance on template not
working correctly
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23107
Bug ID: 23107
Summary: Constructor inheritance on template not working
correctly
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++14
Assignee: unassignedclangbugs at nondot.org
Reporter: jbreitbart at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14140
--> https://llvm.org/bugs/attachment.cgi?id=14140&action=edit
Minimal test case
Hi,
the attached code does not compile with clang trunk (build a few days ago). It
compiles fine with g++ and my understanding is, that it is valid code (but I
may be wrong here). Here is the error message:
$ clang++ -std=c++14 constructor_inh.cpp
constructor_inh.cpp:4:19: error: dependent using declaration resolved to type
without 'typename'
using myBase::a;
^
constructor_inh.cpp:11:19: note: in instantiation of template class 'a' requested here
a b;
^
constructor_inh.cpp:8:8: note: target of using declaration
struct a {
^
1 error generated.
If I add a typename to the using declaration the error message changes to
constructor_inh.cpp:4:28: error: target of using declaration conflicts with
declaration already in scope
[...]
$ clang -v
clang version 3.7.0 (trunk 233370)
Target: x86_64-unknown-linux-gnu
Thread model: posix
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.9.1
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.1
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Candidate multilib: .;@m64
Selected multilib: .;@m64
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 12:28:36 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 19:28:36 +0000
Subject: [LLVMbugs] [Bug 23073] [AVX] bloated vector constant loads
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23073
Sanjay Patel changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #7 from Sanjay Patel ---
Fix checked in:
http://reviews.llvm.org/rL233931
The question of why we're generating blends universally is still open (at least
in my mind), and I've followed up on the commit mail where those were
introduced:
http://reviews.llvm.org/rL219022
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 13:56:39 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 20:56:39 +0000
Subject: [LLVMbugs] [Bug 22685] making zeros the hard way: scalar load into
zero vector (AVX)
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=22685
Sanjay Patel changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #5 from Sanjay Patel ---
http://reviews.llvm.org/rL233704
http://reviews.llvm.org/rL233724
http://reviews.llvm.org/rL233931
http://reviews.llvm.org/rL233941
After those, I think we can declare victory. The AVX2 codegen for the test
cases in comment 4 is ideal:
_mov_v8f32: ## @mov_v8f32
.cfi_startproc
## BB#0:
vmovss (%rdi), %xmm1 ## xmm1 = mem[0],zero,zero,zero
vaddps %ymm0, %ymm1, %ymm0
retq
.cfi_endproc
.globl _mov_v4f64
.align 4, 0x90
_mov_v4f64: ## @mov_v4f64
.cfi_startproc
## BB#0:
vmovsd (%rdi), %xmm1 ## xmm1 = mem[0],zero
vaddpd %ymm0, %ymm1, %ymm0
retq
.cfi_endproc
.globl _mov_v4i64
.align 4, 0x90
_mov_v4i64: ## @mov_v4i64
.cfi_startproc
## BB#0:
vmovq (%rdi), %xmm1 ## xmm1 = mem[0],zero
vpaddq %ymm0, %ymm1, %ymm0
retq
.cfi_endproc
.globl _mov_v8i32
.align 4, 0x90
_mov_v8i32: ## @mov_v8i32
.cfi_startproc
## BB#0:
vmovd (%rdi), %xmm1 ## xmm1 = mem[0],zero,zero,zero
vpaddd %ymm0, %ymm1, %ymm0
retq
.cfi_endproc
.globl _mov_v16i16
.align 4, 0x90
_mov_v16i16: ## @mov_v16i16
.cfi_startproc
## BB#0:
movzwl (%rdi), %eax
vmovd %eax, %xmm0
vpaddw %ymm0, %ymm1, %ymm0
retq
.cfi_endproc
.globl _mov_v32i8
.align 4, 0x90
_mov_v32i8: ## @mov_v32i8
.cfi_startproc
## BB#0:
movzbl (%rdi), %eax
vmovd %eax, %xmm1
vpaddb %ymm0, %ymm1, %ymm0
retq
-------------------------------------------------------------------------------
There's still something screwy with AVX1 and the integer cases, but this will
be a separate bug:
vmovd (%rdi), %xmm1 ## xmm1 = mem[0],zero,zero,zero
vpaddd %xmm0, %xmm1, %xmm1
vextractf128 $1, %ymm0, %xmm0
vinsertf128 $1, %xmm0, %ymm1, %ymm0
retq
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 15:17:36 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 22:17:36 +0000
Subject: [LLVMbugs] [Bug 23018] clang claims an inherited constructor
protected when declared public with using
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23018
Richard Smith changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |richard-llvm at metafoo.co.uk
Resolution|--- |INVALID
--- Comment #1 from Richard Smith ---
An inheriting constructor has the same access as the corresponding original
constructor. See [class.inhctor]p4.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 15:18:35 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 22:18:35 +0000
Subject: [LLVMbugs] [Bug 23107] Constructor inheritance on template not
working correctly
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23107
Richard Smith changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |richard-llvm at metafoo.co.uk
Resolution|--- |DUPLICATE
--- Comment #1 from Richard Smith ---
The C++ committee have discussed this case and did not intend for that syntax
to be valid. Use
using myBase::myBase;
instead to declare an inheriting constructor.
*** This bug has been marked as a duplicate of bug 22242 ***
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 16:10:43 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 02 Apr 2015 23:10:43 +0000
Subject: [LLVMbugs] [Bug 23108] New: Potential bad code generation with TLS
and PowerPC
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23108
Bug ID: 23108
Summary: Potential bad code generation with TLS and PowerPC
Product: new-bugs
Version: 3.5
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: matt.davis at pgroup.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Hello,
I have discovered a potential inconsistency with LLVM and TLS code generation
for PowerPC, specifically Power8.
This test program exists as two object files,
test.o which references an external TLS variable "y", which belongs to
test_a.o.
These two .o files are linked together to create my test application. I am not
compiling this example with -relocation-model=pic
The variable in question, "y", is located in the initialized data section of
the
resulting executable. Now, on to my issue:
I have an external TLS integer variable, "y" which is declared as the following
from my test.c source file.
@y = external thread_local global i32 ,section ".comm" , align 4
When my code first tries to access this external variable, my compiler emits
the following
code sequence in llvm to access and then add the value of another int to 'y':
Build:
llc ./test.ll -mcpu=native -o ./test.s
Result:
%41 = load i32* @y, align 4, !dbg !20
...
%57 = add i32 %41, %56, !dbg !20
This generates the following asm:
Build:
/usr/bin/as ./test.s -mpower8 -o test.o
Result:
ld 0, y at got@tprel at l(6)
addis 7, 2, x at got@tprel at ha
lwz 30, -120(1)
lwz 29, -116(1)
add 28, 0, y at tls
lwz 0, -96(1)
lwz 28, 0(28)
ld 27, x at got@tprel at l(7)
lwz 26, -76(1)
lwz 25, -80(1)
lwz 24, -84(1)
lwz 23, -88(1)
add 26, 26, 25
Since GNU-ld can manipulate TLS instructions (for optimization purposes) the
following is the resulting object code after linking:
<+360>: addis r7,r13,0
<+364>: lwz r8,-112(r1)
<+368>: lwz r11,-124(r1)
<+372>: addi r7,r7,-28664
<+376>: lwz r12,0(r7)
<+380>: addis r0,r13,0
<+384>: nop
<+388>: lwz r30,-120(r1)
<+392>: lwz r29,-116(r1)
<+396>: li r28,-28668
<+400>: lwz r0,-96(r1)
<+404>: lwz r28,0(r28)
What concerns me, and is causing a segfault is offset +396 to +400.
The linker transforms the asm to object code:
add 28, 0, y at tls transformed--> li r28,-28668
The following lwz at +404 in the object code will try to load r28 (which is a
negative value/not-an-address). This segfaults my application.
Looking at the Power8 ABI for TLS and the specific "add 28, 0, y at tls"
instruction.
1) This appears to be the following relocation: R_PPC64_TLS (y + 0)
2) The Power8 ABI specifies that the "add" and "r9" registers are to be used.
It is not clear to me if the explicit register values as noted in the ABI
have to be used, but it would seem that way.
I have noticed there appears to be a clobber of a register if I specify PIC
compilation.
So is there a code generation fault on behalf of LLVM, or is there something I
have missed?
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 18:37:00 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 01:37:00 +0000
Subject: [LLVMbugs] [Bug 23109] New: clang-cl does not recognize
-fno-color-diagnostics
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23109
Bug ID: 23109
Summary: clang-cl does not recognize -fno-color-diagnostics
Product: clang
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: Driver
Assignee: unassignedclangbugs at nondot.org
Reporter: bernard.solomon at siemens.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
while clang-cl.exe will handle -fcolor-diagnostics which is the default it
would not take -fno-color-diagnostics which I prefer for my color schemes. I
attach a patch which enables it.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Thu Apr 2 21:57:59 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 04:57:59 +0000
Subject: [LLVMbugs] [Bug 23110] New: ICE when using malformed raw string
literal as default parameter
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23110
Bug ID: 23110
Summary: ICE when using malformed raw string literal as default
parameter
Product: new-bugs
Version: 3.6
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: adamschwalm at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14142
--> https://llvm.org/bugs/attachment.cgi?id=14142&action=edit
stack trace for the sample program
When using a malformed raw string literal as a default argument to a member
function template, an internal compiler error occurs. LLVM installed from the
arch linux packages.
Here is a small example case, named test1.cpp and compiled with 'clang++
-std=c++11 test1.cpp' it produces the attached stacktrace:
#include
#include
struct S {
template
void foo(std::string s = R"\S+") {}
};
int main() { S{}.foo(); }
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 02:43:08 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 09:43:08 +0000
Subject: [LLVMbugs] [Bug 23112] New: clang-cl: /fp is not supported
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23112
Bug ID: 23112
Summary: clang-cl: /fp is not supported
Product: clang
Version: unspecified
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Driver
Assignee: unassignedclangbugs at nondot.org
Reporter: david.majnemer at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
It looks like /fp:fast should map to -ffast-math and /fp:except should map to
-ftrapping-math.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 02:43:17 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 09:43:17 +0000
Subject: [LLVMbugs] [Bug 23113] New: [instcombine] crash with (Assertion
`SrcElemBitWidth && "vector elements must have a bitwidth"' failed)
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23113
Bug ID: 23113
Summary: [instcombine] crash with (Assertion `SrcElemBitWidth
&& "vector elements must have a bitwidth"' failed)
Product: new-bugs
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: Hao.Liu at arm.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14143
--> https://llvm.org/bugs/attachment.cgi?id=14143&action=edit
patch to fix the instcombine crash on pointer vector
The instcombine came across an assertion failure in when visiting shufflevector
and checking if the shuffle extracting from LHS as follows:
llvm::Instruction*
llvm::InstCombiner::visitShuffleVectorInst(llvm::ShuffleVectorInst&):
Assertion `SrcElemBitWidth && "vector elements must have a bitwidth"' failed.
The root cause is getPrimitiveSizeInBits returns 0 for pointer vector. So I
created a patch to disable such check for pointer vectors.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 03:19:22 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 10:19:22 +0000
Subject: [LLVMbugs] [Bug 23114] New: Usage of attribute address_space causes
error in backend
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23114
Bug ID: 23114
Summary: Usage of attribute address_space causes error in
backend
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: LLVM Codegen
Assignee: unassignedclangbugs at nondot.org
Reporter: svenk.public at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14144
--> https://llvm.org/bugs/attachment.cgi?id=14144&action=edit
run script
Casting to a pointer with the 'address_space' attribute causes a fatal error in
the backend.
Error message:
fatal error: error in backend: Cannot select: 0x38752a0: i64 = addrspacecast
0x3875190[0 -> 257] [ORD=8] [ID=12]
0x3875190: i64,ch = load 0x3875080, 0x3874910, 0x3874b30 [ORD=7]
[ID=11]
0x3874910: i64 = FrameIndex<0> [ID=2]
0x3874b30: i64 = undef [ID=3]
In function: func
clang-3.7: error: clang frontend command failed with exit code 70 (use -v to
see invocation)
Example code to reproduce error:
#define FS_RELATIVE __attribute__((address_space(257)))
void func(char * p1, char * p2) {
FS_RELATIVE char * p11 = (FS_RELATIVE char *) p1; /* 01 */
*p11 = *p2;
}
Possible workaround is to introduce a cast to a non-pointer-type, i.e. replace
line marked /* 01 */ with:
FS_RELATIVE char * p11 = (FS_RELATIVE char *)(unsigned long)p1;
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 10:11:17 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 17:11:17 +0000
Subject: [LLVMbugs] [Bug 23115] New: LLVM opt and ordering of floating point
conversions with potential overflow
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23115
Bug ID: 23115
Summary: LLVM opt and ordering of floating point conversions
with potential overflow
Product: new-bugs
Version: 3.5
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: matt.davis at pgroup.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Hello,
I found a potential reordering of instructions produced by llvm's optimizer,
that is unfavorable to floating point expressions.
Our compiler will unroll the loop in the case that we are examining. With that
said, the llvm code we intentionally generate is the following:
OpenACC c code:
int useVLA (int useacc, long size,const int n1, float avla[n1])
{
#pragma acc kernels pcopy(avla[0:n1]) if (useacc)
{
#pragma acc loop independent
for (int i=0; i < n1; ++i1) {
avla[i] = (float) (1) + (float) (i + 1) ;
}
}
The code I care about is specifically the ordering of the integer additions and
float conversion:
(float)(1) + (float)(i + 1)
What we generate as llvm (and this is correct):
%16 load i32* %.ndi0002.addr, align 4, !dbg !28
%17 = add i32 %16, 1, !dbg !28
%18 = sitofp i32 %17 to float, !dbg !28
%19 = load float* %.r1.0018.addr, align 4, !dbg !28
%20 = fadd float %18, %19, !dbg !28
%21 = load i8** %.G0001.addr, align 8, !dbg !28
%22 = getelementptr i8* %21, i64 -28, !dbg !28
%23 = bitcast i8* %22 to float*, !dbg !28
store float %20, float* %23, align 4, !dbg !28
%16 and %17 perform the integer add for (i + 1).
%18 converts the result to a single precision float.
%19 loads a constant (this is fine) as a floating point
%20 - %23 perform the floating point addition and store into the array.
That is fine. However, after llvm optimization, opt generates the transformed
code:
%13 = or i32 %.ndi0002.addr.0, 1, !dbg !14
%addconv = add nsw i32 %13, 1, !dbg !14
%14 = sitofp i32 %addconv to float, !dbg !14
%15 = getelementptr i8* %.G0001.addr.0, i64 -28, !dbg !14
%16 = bitcast i8* %15 to float*, !dbg !14
store float %14, float* %16, align 4, !dbg !14
%13 and the %addconv perform the (i + 1) + 1 and then convert that combined
result as a single precision float. Ideally, to avoid overflow, we wanted the
semantics similar to the original llvm code in the previous example, whereby we
perform i + 1 and then convert to float, and fadd that result to a floating
point value of 1.0.
This seems to happen when we use the following optimizations: -sroa and
-instcombine
Thanks,
-Matt
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 10:34:43 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 17:34:43 +0000
Subject: [LLVMbugs] [Bug 23116] New: Missed optimisation - horizontal max
for vectors is not optimised.
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23116
Bug ID: 23116
Summary: Missed optimisation - horizontal max for vectors is
not optimised.
Product: new-bugs
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: nick at indigorenderer.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Computing the horizontal max (or min etc..) of a vector is not optimised to
faster code.
For example, the C code:
#include
inline float max(float a, float b)
{
return a > b ? a : b;
}
float findMax(__m256 v)
{
return max(max(max(max(max(max(max(v[0], v[1]), v[2]), v[3]), v[4]),
v[5]), v[6]), v[7]);
}
Is compiled to by Clang 3.7/trunk to:
findMax(float __vector(8)): # @findMax(float
__vector(8))
vmovshdup %xmm0, %xmm1 # xmm1 = xmm0[1,1,3,3]
vmaxss %xmm1, %xmm0, %xmm1
vpermilpd $1, %xmm0, %xmm2 # xmm2 = xmm0[1,0]
vmaxss %xmm2, %xmm1, %xmm1
vpermilps $231, %xmm0, %xmm2 # xmm2 = xmm0[3,1,2,3]
vmaxss %xmm2, %xmm1, %xmm1
vextractf128 $1, %ymm0, %xmm0
vmaxss %xmm0, %xmm1, %xmm1
vmovshdup %xmm0, %xmm2 # xmm2 = xmm0[1,1,3,3]
vmaxss %xmm2, %xmm1, %xmm1
vpermilpd $1, %xmm0, %xmm2 # xmm2 = xmm0[1,0]
vmaxss %xmm2, %xmm1, %xmm1
vpermilps $231, %xmm0, %xmm0 # xmm0 = xmm0[3,1,2,3]
vmaxss %xmm0, %xmm1, %xmm0
vzeroupper
retq
Which is basically 7 vmaxss's in serial (slow).
It could be optimised to something like:
float findMax(__m256 v)
{
__m128 a = _mm256_extractf128_ps(v, 0);
__m128 b = _mm256_extractf128_ps(v, 1);
__m128 c = _mm_max_ps(a, b);
return max(max(c[0], c[1]), max(c[2], c[3]));
}
Which compiles to:
findMax(float __vector(8)): # @findMax(float
__vector(8))
vextractf128 $1, %ymm0, %xmm1
vmaxps %xmm1, %xmm0, %xmm0
vmovshdup %xmm0, %xmm1 # xmm1 = xmm0[1,1,3,3]
vmaxss %xmm1, %xmm0, %xmm1
vpermilpd $1, %xmm0, %xmm2 # xmm2 = xmm0[1,0]
vpermilps $231, %xmm0, %xmm0 # xmm0 = xmm0[3,1,2,3]
vmaxss %xmm0, %xmm2, %xmm0
vmaxss %xmm0, %xmm1, %xmm0
vzeroupper
retq
See http://goo.gl/jM3KNz for the code.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 10:47:31 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 17:47:31 +0000
Subject: [LLVMbugs] [Bug 23117] New: Assertion failure parsing block
expressions with nonnull attributes
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23117
Bug ID: 23117
Summary: Assertion failure parsing block expressions with
nonnull attributes
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Frontend
Assignee: unassignedclangbugs at nondot.org
Reporter: thonermann at coverity.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
An assertion failure occurs in Clang 3.5 through trunk (r234011) when a nonnull
attribute appears on a Block expression. Clang 3.4 issues a warning for these
cases. The check for a non-function declaration that previously resulted in
the warning was removed in r199387.
$ cat t.c
void(^bp1)(int *) = ^(int *p1) __attribute__((nonnull(1))) {};
$ clang-trunk --version
clang version 3.7.0 (trunk 234011)
Target: x86_64-unknown-linux-gnu
Thread model: posix
$ clang-trunk -c -fblocks t.c
clang:
/nfs/thonermann/src/llvm-trunk/tools/clang/lib/Sema/SemaDeclAttr.cpp:260: bool
checkFunctionOrMethodParameterIndex(clang::Sema &, const clang::Decl *, const
clang::AttributeList &, unsigned int, const clang::Expr *, uint64_t &):
Assertion `isFunctionOrMethod(D)' failed.
...
$ clang-3.4 --version
clang version 3.4 (tags/RELEASE_34/final)
Target: x86_64-unknown-linux-gnu
Thread model: posix
$ clang-3.4 -c -fblocks t.c
t.c:1:47: warning: 'nonnull' attribute only applies to functions
[-Wignored-attributes]
void(^bp1)(int *) = ^(int *p1) __attribute__((nonnull(1))) {};
^
1 warning generated.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 12:06:57 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 19:06:57 +0000
Subject: [LLVMbugs] [Bug 23118] New: Poor error message for incompatible
member function reference qualifiers
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23118
Bug ID: 23118
Summary: Poor error message for incompatible member function
reference qualifiers
Product: clang
Version: 3.5
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Frontend
Assignee: unassignedclangbugs at nondot.org
Reporter: david at doublewise.net
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
struct S {
void f() & {}
};
int main() {
S{}.f();
}
source/main.cpp:6:2: error: cannot initialize object parameter of type 'S' with
an expression of type 'S'
S{}.f();
^~~
The error message should probably reference qualify the S.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 13:19:02 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 20:19:02 +0000
Subject: [LLVMbugs] [Bug 23113] [instcombine] crash with (Assertion
`SrcElemBitWidth && "vector elements must have a bitwidth"' failed)
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23113
David Majnemer changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |david.majnemer at gmail.com
Component|new bugs |Scalar Optimizations
Resolution|--- |FIXED
Product|new-bugs |libraries
--- Comment #2 from David Majnemer ---
Fixed in r234046.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 16:47:50 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 03 Apr 2015 23:47:50 +0000
Subject: [LLVMbugs] [Bug 23119] New: RegisterScavenger ignores kill flags on
predicated instructions
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23119
Bug ID: 23119
Summary: RegisterScavenger ignores kill flags on predicated
instructions
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Common Code Generator Code
Assignee: unassignedbugs at nondot.org
Reporter: tobias at codeaurora.org
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
The RegisterScavenger explicitly ignores flags on operands of predicated
instructions and therefore assumes that such registers remain live. When it
then scavenges such a register, it inserts a spill of this (killed) register.
This is invalid code and gets flagged up by the verifier.
RegisterScavenging.cpp includes a comment that explains why it ignores flags on
predicated instructions:
// FIXME: The scavenger is not predication aware. If the instruction is
// predicated, conservatively assume "kill" markers do not actually kill the
// register. Similarly ignores "dead" markers.
Is this still needed for any target?
Just removing the special handling of predicated instructions would seem an
easy way to fix this.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Fri Apr 3 19:24:44 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 04 Apr 2015 02:24:44 +0000
Subject: [LLVMbugs] [Bug 23100] Suboptimal encoding of 64 bit and with small
immediate
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23100
Craig Topper changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #3 from Craig Topper ---
Fixed in r234075.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sat Apr 4 11:56:54 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 04 Apr 2015 18:56:54 +0000
Subject: [LLVMbugs] [Bug 23120] New: clang segfault involving diagnostics,
constexpr default initialization, and user-defined literals
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23120
Bug ID: 23120
Summary: clang segfault involving diagnostics, constexpr
default initialization, and user-defined literals
Product: clang
Version: 3.6
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: systems2029 at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14145
--> https://llvm.org/bugs/attachment.cgi?id=14145&action=edit
Somewhat-reduced test code.
Odd crash involving constexpr default initialization, diagnostics, and possibly
user-defined literals (couldn't remove them from the code that crashes at
least). Segfault goes away if the value in main is correctly initialized, or if
basically any other lines in the code are changed.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sat Apr 4 12:13:07 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 04 Apr 2015 19:13:07 +0000
Subject: [LLVMbugs] [Bug 23121] New: clang segfaults when processing macro
code
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23121
Bug ID: 23121
Summary: clang segfaults when processing macro code
Product: clang
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: C++14
Assignee: unassignedclangbugs at nondot.org
Reporter: ryan.burn at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Attached code and script to reproduce. Here is the stack trace:
0 clang-3.7 0x0000000001382fba
llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 42
1 clang-3.7 0x000000000138465b
2 libpthread.so.0 0x00007fae16924b10
3 clang-3.7 0x00000000025ce07f
clang::TokenLexer::ExpandFunctionArguments() + 2431
4 clang-3.7 0x00000000025cd68f clang::TokenLexer::Init(clang::Token&,
clang::SourceLocation, clang::MacroInfo*, clang::MacroArgs*) + 319
5 clang-3.7 0x00000000025b0a2a
clang::Preprocessor::EnterMacro(clang::Token&, clang::SourceLocation,
clang::MacroInfo*, clang::MacroArgs*) + 154
6 clang-3.7 0x00000000025b3f33
clang::Preprocessor::HandleMacroExpandedIdentifier(clang::Token&,
clang::MacroDirective*) + 2179
7 clang-3.7 0x00000000025cbb6d
clang::Preprocessor::HandleIdentifier(clang::Token&) + 1293
8 clang-3.7 0x00000000025ce951 clang::TokenLexer::Lex(clang::Token&) +
849
9 clang-3.7 0x00000000025cbbe6 clang::Preprocessor::Lex(clang::Token&) +
102
10 clang-3.7 0x00000000025cffeb
clang::MacroArgs::getPreExpArgument(unsigned int, clang::MacroInfo const*,
clang::Preprocessor&) + 331
11 clang-3.7 0x00000000025cd8c8
clang::TokenLexer::ExpandFunctionArguments() + 456
12 clang-3.7 0x00000000025cd68f clang::TokenLexer::Init(clang::Token&,
clang::SourceLocation, clang::MacroInfo*, clang::MacroArgs*) + 319
13 clang-3.7 0x00000000025b0a2a
clang::Preprocessor::EnterMacro(clang::Token&, clang::SourceLocation,
clang::MacroInfo*, clang::MacroArgs*) + 154
14 clang-3.7 0x00000000025b3f33
clang::Preprocessor::HandleMacroExpandedIdentifier(clang::Token&,
clang::MacroDirective*) + 2179
15 clang-3.7 0x00000000025cbb6d
clang::Preprocessor::HandleIdentifier(clang::Token&) + 1293
16 clang-3.7 0x00000000025ce951 clang::TokenLexer::Lex(clang::Token&) +
849
17 clang-3.7 0x00000000025cbbe6 clang::Preprocessor::Lex(clang::Token&) +
102
18 clang-3.7 0x0000000001c3e042
clang::Parser::ParseExpressionList(llvm::SmallVectorImpl&,
llvm::SmallVectorImpl&, std::__1::function) +
98
19 clang-3.7 0x0000000001c105a0
clang::Parser::ParseDeclarationAfterDeclaratorAndAttributes(clang::Declarator&,
clang::Parser::ParsedTemplateInfo const&, clang::Parser::ForRangeInit*) + 2976
20 clang-3.7 0x0000000001c0e613
clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, unsigned int,
clang::SourceLocation*, clang::Parser::ForRangeInit*) + 2915
21 clang-3.7 0x0000000001bfe16d
clang::Parser::ParseDeclOrFunctionDefInternal(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec&, clang::AccessSpecifier) + 733
22 clang-3.7 0x0000000001bfdc70
clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*, clang::AccessSpecifier) + 384
23 clang-3.7 0x0000000001bfd1a6
clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*) + 2854
24 clang-3.7 0x0000000001bfc5b8
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr&) + 360
25 clang-3.7 0x0000000001bf9320 clang::ParseAST(clang::Sema&, bool, bool)
+ 256
26 clang-3.7 0x00000000014fa539 clang::FrontendAction::Execute() + 57
27 clang-3.7 0x00000000014cfcd3
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 803
28 clang-3.7 0x000000000156b115
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 3381
29 clang-3.7 0x000000000070cd2f cc1_main(llvm::ArrayRef,
char const*, void*) + 719
30 clang-3.7 0x000000000070bf0a main + 11226
31 libc.so.6 0x00007fae15e62b95 __libc_start_main + 245
32 clang-3.7 0x0000000000709201
Stack dump:
0. Program arguments: /usr/local/bin/clang-3.7 -cc1 -triple
x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free
-disable-llvm-verifier -main-file-name t.cpp -mrelocation-model static
-mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose
-mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64
-dwarf-column-info -resource-dir /usr/local/bin/../lib/clang/3.7.0 -I
/home/rnburn/proj -internal-isystem /usr/local/bin/../include/c++/v1
-internal-isystem /usr/local/include -internal-isystem
/usr/local/bin/../lib/clang/3.7.0/include -internal-externc-isystem /include
-internal-externc-isystem /usr/include -std=c++1y -fdeprecated-macro
-fdebug-compilation-dir /home/rnburn/bugs -ferror-limit 19 -fmessage-length 80
-mstackrealign -fobjc-runtime=gcc -fcxx-exceptions -fexceptions
-fdiagnostics-show-option -fcolor-diagnostics -o /tmp/t-5f1fa8.o -x c++ t.cpp
1. t.cpp:97:9 >: unknown current parser token
clang-3.7: error: unable to execute command: Segmentation fault
clang-3.7: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 3.7.0 (trunk 233507)
Target: x86_64-unknown-linux-gnu
Thread model: posix
clang-3.7: note: diagnostic msg: PLEASE submit a bug report to
http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and
associated run script.
clang-3.7: note: diagnostic msg:
********************
PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang-3.7: note: diagnostic msg: /tmp/t-3fb1e2.cpp
clang-3.7: note: diagnostic msg: /tmp/t-3fb1e2.sh
clang-3.7: note: diagnostic msg:
********************
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sat Apr 4 14:31:50 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 04 Apr 2015 21:31:50 +0000
Subject: [LLVMbugs] [Bug 23115] LLVM opt and ordering of floating point
conversions with potential overflow
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23115
David Majnemer changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |WORKSFORME
--- Comment #3 from David Majnemer ---
Matt, I ran the following IR through trunk opt -O2 and nothing happened:
define void @f(i32 %.ndi0002.addr.0, i8* %.G0001.addr.0) {
%add = add i32 %.ndi0002.addr.0, 1
%sitofp = sitofp i32 %add to float
%fadd = fadd float %sitofp, 1.000000e+00
%gep = getelementptr i8, i8* %.G0001.addr.0, i64 -28
%bitcast = bitcast i8* %gep to float*
store float %fadd, float* %bitcast, align 4
ret void
}
My guess is that we fixed this a long time ago.
Please reopen if you can reproduce on trunk and attach the reproduction to the
report, thanks.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sat Apr 4 14:43:42 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 04 Apr 2015 21:43:42 +0000
Subject: [LLVMbugs] [Bug 23122] New: frameescape intrinsic leads to the
backend crashing
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23122
Bug ID: 23122
Summary: frameescape intrinsic leads to the backend crashing
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Common Code Generator Code
Assignee: unassignedbugs at nondot.org
Reporter: david.majnemer at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
this C++ crashes the backend:
void g();
void f(bool b) {
try {
g();
} catch (int x) {
while (true) {
if (b)
goto out;
}
}
out:
;
}
compile with:
clang -cc1 -triple x86_64-pc-win32 t.cpp -S -o - -fexceptions -fcxx-exceptions
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sat Apr 4 16:55:59 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 04 Apr 2015 23:55:59 +0000
Subject: [LLVMbugs] [Bug 23123] New: Detection of RHEL and variants in clang
is incomplete
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23123
Bug ID: 23123
Summary: Detection of RHEL and variants in clang is incomplete
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Driver
Assignee: unassignedclangbugs at nondot.org
Reporter: mlampe0 at googlemail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14149
--> https://llvm.org/bugs/attachment.cgi?id=14149&action=edit
Proper detection of EHEL and variants
Attached patch fixes:
- el7 isn't detected at all
- centos & scientific linux are not properly detected
- Only add --no-add-needed to the linker flags for fedora and el7
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sat Apr 4 22:34:00 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 05 Apr 2015 05:34:00 +0000
Subject: [LLVMbugs] [Bug 23120] clang segfault involving diagnostics,
constexpr default initialization, and user-defined literals
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23120
David Majnemer changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |dgregor at apple.com
Component|-New Bugs |C++11
Resolution|--- |FIXED
--- Comment #3 from David Majnemer ---
Fixed in r234110.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sat Apr 4 22:49:09 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 05 Apr 2015 05:49:09 +0000
Subject: [LLVMbugs] [Bug 23121] clang segfaults when processing macro code
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23121
David Majnemer changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |david.majnemer at gmail.com
Resolution|--- |WORKSFORME
--- Comment #3 from David Majnemer ---
Hi Ryan,
I can't reproduce with trunk clang (r234090).
Please reopen if you can reproduce with r234090 or newer.
Thanks.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sun Apr 5 01:59:24 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 05 Apr 2015 08:59:24 +0000
Subject: [LLVMbugs] [Bug 23128] New: Instructions for obtaining clang in the
LibTooling and LibASTMatchers tutorial are confusing and out of date
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23128
Bug ID: 23128
Summary: Instructions for obtaining clang in the LibTooling and
LibASTMatchers tutorial are confusing and out of date
Product: clang
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Documentation
Assignee: unassignedclangbugs at nondot.org
Reporter: llvm-bugs at justinbogner.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
The tutorial at http://clang.llvm.org/docs/LibASTMatchersTutorial.html begins
with instructions on obtaining clang.
In these instructions, the user is told to configure with "cmake -G Ninja
../llvm -DLLVM_BUILD_TESTS=ON", then install this compiler and use it to
bootstrap clang. There are a couple of problems here:
1. Most distributions have clang packages these days, so if we really just need
the user to use a clang host compiler we should probably say that, rather than
explaining how to bootstrap.
1a. Do we even need clang as a host compiler? Any compiler that can build llvm
and clang should be fine, shouldn't it?
2. This builds clang without any optimizations, making the rest of the steps of
the tutorial *horribly slow*. At least set CMAKE_BUILD_TYPE=Release.
3. What's up with mentioning LLVM_BUILD_TESTS? It's not necessary for anything
in this tutorial, and the check targets build the tests regardless.
It's also kind of dated that we explain how to build make and ninja and claim
that you should build them yourself because current cmake doesn't support
ninja. That hasn't been true for quite a while.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sun Apr 5 13:55:11 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 05 Apr 2015 20:55:11 +0000
Subject: [LLVMbugs] [Bug 23129] New: Instrumentation-based PGO doesn't work
on OS X (?)
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23129
Bug ID: 23129
Summary: Instrumentation-based PGO doesn't work on OS X (?)
Product: clang
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Frontend
Assignee: unassignedclangbugs at nondot.org
Reporter: nicolasweber at gmx.de
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
I'm trying to follow the
http://clang.llvm.org/docs/UsersManual.html#profile-guided-optimization
instructions for building ninja. I can't seem to get it to work -- either I'm
holding it wrong, or it broke when it got reshuffled.
I'm doing:
$ git clone https://github.com/martine/ninja.git
Cloning into 'ninja'...
remote: Counting objects: 8458, done.
remote: Compressing objects: 100% (36/36), done.
remote: Total 8458 (delta 15), reused 0 (delta 0), pack-reused 8422
Receiving objects: 100% (8458/8458), 1.86 MiB | 635.00 KiB/s, done.
Resolving deltas: 100% (5974/5974), done.
Checking connectivity... done.
$ cd ninja
$ CXX=/Users/thakis/src/llvm-build/bin/clang++ CFLAGS="-stdlib=libstdc++
-fprofile-instr-generate -isysroot $(xcrun -show-sdk-path)"
LDFLAGS='-stdlib=libstdc++ -fprofile-instr-generate' ./configure.py
warning: A compatible version of re2c (>= 0.11.3) was not found; changes to
src/*.in.cc will not affect your build.
wrote build.ninja.
$ ninja -v
[1/24] /Users/thakis/src/llvm-build/bin/clang++ -MMD -MT build/build.o -MF
build/build.o.d -g -Wall -Wextra -Wno-deprecated -Wno-unused-parameter
-fno-rtti -fno-exceptions -fvisibility=hidden -pipe
-Wno-missing-field-initializers '-DNINJA_PYTHON="python"' -O2 -DNDEBUG
-fdiagnostics-color -DNINJA_HAVE_BROWSE -stdlib=libstdc++
-fprofile-instr-generate -isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk
-c src/build.cc -o build/build.o
# ... (omitted, just wanted to show that the flags are there)
[24/24] /Users/thakis/src/llvm-build/bin/clang++ -Lbuild -stdlib=libstdc++
-fprofile-instr-generate -o ninja build/ninja.o -lninja
$ ./ninja manifest_parser_perftest
[2/2] LINK manifest_parser_perftest
Nicos-MBP-8:ninja thakis$ ./manifest_parser_perftest
Creating manifest data...done.
1128ms (hash: c617022)
1117ms (hash: c617022)
1145ms (hash: c617022)
1131ms (hash: c617022)
1148ms (hash: c617022)
min 1117ms max 1148ms avg 1133.8ms
$ ls -l default.profraw
-rw-r--r-- 1 thakis staff 0 Apr 5 13:56 default.profraw
Note that default.profraw is getting generated, but it ends up empty.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sun Apr 5 15:51:14 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 05 Apr 2015 22:51:14 +0000
Subject: [LLVMbugs] [Bug 22890] .strtab and .symtab present when --strip-all
is used
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=22890
Davide Italiano changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #1 from Davide Italiano ---
r234130 should help. Thanks for the report.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sun Apr 5 19:32:34 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 02:32:34 +0000
Subject: [LLVMbugs] [Bug 23131] New: std::function constructor unable to
take std::allocator
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23131
Bug ID: 23131
Summary: std::function constructor unable to take
std::allocator
Product: libc++
Version: unspecified
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: All Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: donutydonuts+clang at gmail.com
CC: llvmbugs at cs.uiuc.edu, mclow.lists at gmail.com
Classification: Unclassified
#include
#include
int main()
{
// Error on this line
//
std::function test_fn(std::allocator_arg, std::allocator(),
[]()
{
});
// This line works. When changed to std::allocator
//
std::function test_fn(std::allocator_arg, std::allocator(),
[]()
{
});
return 0;
}
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sun Apr 5 21:56:50 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 04:56:50 +0000
Subject: [LLVMbugs] [Bug 23121] clang segfaults when processing macro code
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23121
ryan.burn at gmail.com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|WORKSFORME |---
--- Comment #4 from ryan.burn at gmail.com ---
I tried with 234142. This still crashes. Here's stack trace
0 clang-3.7 0x00000000012d6b9a
llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 42
1 clang-3.7 0x00000000012d7f5b
2 libpthread.so.0 0x00007fe6c8fe9b10
3 clang-3.7 0x000000000245f04f
clang::TokenLexer::ExpandFunctionArguments() + 2383
4 clang-3.7 0x000000000245e68f clang::TokenLexer::Init(clang::Token&,
clang::SourceLocation, clang::MacroInfo*, clang::MacroArgs*) + 319
5 clang-3.7 0x000000000244337a
clang::Preprocessor::EnterMacro(clang::Token&, clang::SourceLocation,
clang::MacroInfo*, clang::MacroArgs*) + 154
6 clang-3.7 0x00000000024466c9
clang::Preprocessor::HandleMacroExpandedIdentifier(clang::Token&,
clang::MacroDirective*) + 2185
7 clang-3.7 0x000000000245cb7d
clang::Preprocessor::HandleIdentifier(clang::Token&) + 1293
8 clang-3.7 0x000000000245f8a2 clang::TokenLexer::Lex(clang::Token&) +
850
9 clang-3.7 0x000000000245cbf6 clang::Preprocessor::Lex(clang::Token&) +
102
10 clang-3.7 0x0000000002460f1b
clang::MacroArgs::getPreExpArgument(unsigned int, clang::MacroInfo const*,
clang::Preprocessor&) + 331
11 clang-3.7 0x000000000245e8c1
clang::TokenLexer::ExpandFunctionArguments() + 449
12 clang-3.7 0x000000000245e68f clang::TokenLexer::Init(clang::Token&,
clang::SourceLocation, clang::MacroInfo*, clang::MacroArgs*) + 319
13 clang-3.7 0x000000000244337a
clang::Preprocessor::EnterMacro(clang::Token&, clang::SourceLocation,
clang::MacroInfo*, clang::MacroArgs*) + 154
14 clang-3.7 0x00000000024466c9
clang::Preprocessor::HandleMacroExpandedIdentifier(clang::Token&,
clang::MacroDirective*) + 2185
15 clang-3.7 0x000000000245cb7d
clang::Preprocessor::HandleIdentifier(clang::Token&) + 1293
16 clang-3.7 0x000000000245f8a2 clang::TokenLexer::Lex(clang::Token&) +
850
17 clang-3.7 0x000000000245cbf6 clang::Preprocessor::Lex(clang::Token&) +
102
18 clang-3.7 0x0000000001b2db52
clang::Parser::ParseExpressionList(llvm::SmallVectorImpl&,
llvm::SmallVectorImpl&, std::__1::function) +
98
19 clang-3.7 0x0000000001b017b9
clang::Parser::ParseDeclarationAfterDeclaratorAndAttributes(clang::Declarator&,
clang::Parser::ParsedTemplateInfo const&, clang::Parser::ForRangeInit*) + 2361
20 clang-3.7 0x0000000001affc88
clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, unsigned int,
clang::SourceLocation*, clang::Parser::ForRangeInit*) + 2872
21 clang-3.7 0x0000000001aefb3d
clang::Parser::ParseDeclOrFunctionDefInternal(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec&, clang::AccessSpecifier) + 733
22 clang-3.7 0x0000000001aef640
clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*, clang::AccessSpecifier) + 384
23 clang-3.7 0x0000000001aeea54
clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*) + 2404
24 clang-3.7 0x0000000001aee028
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr&) + 360
25 clang-3.7 0x0000000001aead90 clang::ParseAST(clang::Sema&, bool, bool)
+ 256
26 clang-3.7 0x0000000001441f39 clang::FrontendAction::Execute() + 57
27 clang-3.7 0x00000000014188e3
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 803
28 clang-3.7 0x00000000014adb0c
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 3020
29 clang-3.7 0x000000000070b17f cc1_main(llvm::ArrayRef,
char const*, void*) + 719
30 clang-3.7 0x000000000070a6a1 main + 10865
31 libc.so.6 0x00007fe6c8527b95 __libc_start_main + 245
32 clang-3.7 0x0000000000707b0d
Stack dump:
0. Program arguments: /usr/local/bin/clang-3.7 -cc1 -triple
x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free
-disable-llvm-verifier -main-file-name t.cpp -mrelocation-model static
-mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose
-mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64
-dwarf-column-info -resource-dir /usr/local/bin/../lib/clang/3.7.0
-internal-isystem
/usr/local/bin/../lib64/gcc/x86_64-unknown-linux-gnu/4.9.1/../../../../include/c++/4.9.1
-internal-isystem
/usr/local/bin/../lib64/gcc/x86_64-unknown-linux-gnu/4.9.1/../../../../include/c++/4.9.1/x86_64-unknown-linux-gnu
-internal-isystem
/usr/local/bin/../lib64/gcc/x86_64-unknown-linux-gnu/4.9.1/../../../../include/c++/4.9.1/backward
-internal-isystem /usr/local/include -internal-isystem
/usr/local/bin/../lib/clang/3.7.0/include -internal-externc-isystem /include
-internal-externc-isystem /usr/include -fdeprecated-macro
-fdebug-compilation-dir /home/rnburn/bugs/preprocessor -ferror-limit 19
-fmessage-length 125 -mstackrealign -fobjc-runtime=gcc -fcxx-exceptions
-fexceptions -fdiagnostics-show-option -fcolor-diagnostics -o /tmp/t-394668.o
-x c++ t.cpp
1. t.cpp:97:9 >: unknown current parser token
clang-3.7: error: unable to execute command: Segmentation fault
clang-3.7: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 3.7.0 (trunk 234142)
Target: x86_64-unknown-linux-gnu
Thread model: posix
clang-3.7: note: diagnostic msg: PLEASE submit a bug report to
http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and
associated run script.
clang-3.7: note: diagnostic msg:
********************
PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang-3.7: note: diagnostic msg: /tmp/t-48fc05.cpp
clang-3.7: note: diagnostic msg: /tmp/t-48fc05.sh
clang-3.7: note: diagnostic msg:
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Sun Apr 5 22:32:31 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 05:32:31 +0000
Subject: [LLVMbugs] [Bug 23133] New: crash in function tryCaptureVariable
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23133
Bug ID: 23133
Summary: crash in function tryCaptureVariable
Product: clang
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: C++14
Assignee: unassignedclangbugs at nondot.org
Reporter: ryan.burn at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
attached script and source. Here is the stack trace:
#0 0x12d6b9a llvm::sys::PrintStackTrace(llvm::raw_ostream&)
(/usr/local/bin/clang-3.7+0x12d6b9a)
#1 0x12d7f5b SignalHandler(int) (/usr/local/bin/clang-3.7+0x12d7f5b)
#2 0x7fedf6d59b10 __restore_rt (/lib64/libpthread.so.0+0x10b10)
#3 0x1e26360 clang::Sema::tryCaptureVariable(clang::VarDecl*,
clang::SourceLocation, clang::Sema::TryCaptureKind, clang::SourceLocation,
bool, clang::QualType&, clang::QualType&, unsigned int const*)
(/usr/local/bin/clang-3.7+0x1e26360)
#4 0x1df5733 clang::Sema::BuildDeclRefExpr(clang::ValueDecl*, clang::QualType,
clang::ExprValueKind, clang::DeclarationNameInfo const&, clang::CXXScopeSpec
const*, clang::NamedDecl*, clang::TemplateArgumentListInfo const*)
(/usr/local/bin/clang-3.7+0x1df5733)
#5 0x1df9f99 clang::Sema::BuildDeclarationNameExpr(clang::CXXScopeSpec const&,
clang::DeclarationNameInfo const&, clang::NamedDecl*, clang::NamedDecl*,
clang::TemplateArgumentListInfo const*, bool)
(/usr/local/bin/clang-3.7+0x1df9f99)
#6 0x2009334 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformDeclRefExpr(clang::DeclRefExpr*)
(/usr/local/bin/clang-3.7+0x2009334)
#7 0x1ffb4e4 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformExprs(clang::Expr**, unsigned int,
bool, llvm::SmallVectorImpl&, bool*)
(/usr/local/bin/clang-3.7+0x1ffb4e4)
#8 0x200883f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*)
(/usr/local/bin/clang-3.7+0x200883f)
#9 0x1ffa3d0 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformExpr(clang::Expr*)
(/usr/local/bin/clang-3.7+0x1ffa3d0)
#10 0x1ff1dfd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff1dfd)
#11 0x1ff431f clang::Sema::SubstFunctionDeclType(clang::TypeSourceInfo*,
clang::MultiLevelTemplateArgumentList const&, clang::SourceLocation,
clang::DeclarationName, clang::CXXRecordDecl*, unsigned int)
(/usr/local/bin/clang-3.7+0x1ff431f)
#12 0x201c698
clang::TemplateDeclInstantiator::SubstFunctionType(clang::FunctionDecl*,
llvm::SmallVectorImpl&)
(/usr/local/bin/clang-3.7+0x201c698)
#13 0x2019f2d
clang::TemplateDeclInstantiator::VisitCXXMethodDecl(clang::CXXMethodDecl*,
clang::TemplateParameterList*, bool) (/usr/local/bin/clang-3.7+0x2019f2d)
#14 0x201cec8 clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&)
(/usr/local/bin/clang-3.7+0x201cec8)
#15 0x1fcaf4a
clang::Sema::FinishTemplateArgumentDeduction(clang::FunctionTemplateDecl*,
llvm::SmallVectorImpl&, unsigned int,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&,
llvm::SmallVectorImpl const*, bool)
(/usr/local/bin/clang-3.7+0x1fcaf4a)
#16 0x1fcca3e
clang::Sema::DeduceTemplateArguments(clang::FunctionTemplateDecl*,
clang::TemplateArgumentListInfo*, llvm::ArrayRef,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&, bool)
(/usr/local/bin/clang-3.7+0x1fcca3e)
#17 0x1f2afd4
clang::Sema::AddMethodTemplateCandidate(clang::FunctionTemplateDecl*,
clang::DeclAccessPair, clang::CXXRecordDecl*, clang::TemplateArgumentListInfo*,
clang::QualType, clang::Expr::Classification, llvm::ArrayRef,
clang::OverloadCandidateSet&, bool, bool) (/usr/local/bin/clang-3.7+0x1f2afd4)
#18 0x1f40a03 clang::Sema::BuildCallToObjectOfClassType(clang::Scope*,
clang::Expr*, clang::SourceLocation, llvm::MutableArrayRef,
clang::SourceLocation) (/usr/local/bin/clang-3.7+0x1f40a03)
#19 0x1df15ee clang::Sema::ActOnCallExpr(clang::Scope*, clang::Expr*,
clang::SourceLocation, llvm::MutableArrayRef,
clang::SourceLocation, clang::Expr*, bool) (/usr/local/bin/clang-3.7+0x1df15ee)
#20 0x20088b7 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*)
(/usr/local/bin/clang-3.7+0x20088b7)
#21 0x1ffa3d0 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformExpr(clang::Expr*)
(/usr/local/bin/clang-3.7+0x1ffa3d0)
#22 0x1ff1dfd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff1dfd)
#23 0x1ff089f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*)
(/usr/local/bin/clang-3.7+0x1ff089f)
#24 0x2007b12 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArgument(clang::TemplateArgumentLoc
const&, clang::TemplateArgumentLoc&) (/usr/local/bin/clang-3.7+0x2007b12)
#25 0x2006278 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName)
(/usr/local/bin/clang-3.7+0x2006278)
#26 0x1ff242a clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff242a)
#27 0x1ff1f2e clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff1f2e)
#28 0x1ff431f clang::Sema::SubstFunctionDeclType(clang::TypeSourceInfo*,
clang::MultiLevelTemplateArgumentList const&, clang::SourceLocation,
clang::DeclarationName, clang::CXXRecordDecl*, unsigned int)
(/usr/local/bin/clang-3.7+0x1ff431f)
#29 0x201c698
clang::TemplateDeclInstantiator::SubstFunctionType(clang::FunctionDecl*,
llvm::SmallVectorImpl&)
(/usr/local/bin/clang-3.7+0x201c698)
#30 0x2019f2d
clang::TemplateDeclInstantiator::VisitCXXMethodDecl(clang::CXXMethodDecl*,
clang::TemplateParameterList*, bool) (/usr/local/bin/clang-3.7+0x2019f2d)
#31 0x201cec8 clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&)
(/usr/local/bin/clang-3.7+0x201cec8)
#32 0x1fcaf4a
clang::Sema::FinishTemplateArgumentDeduction(clang::FunctionTemplateDecl*,
llvm::SmallVectorImpl&, unsigned int,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&,
llvm::SmallVectorImpl const*, bool)
(/usr/local/bin/clang-3.7+0x1fcaf4a)
#33 0x1fcca3e
clang::Sema::DeduceTemplateArguments(clang::FunctionTemplateDecl*,
clang::TemplateArgumentListInfo*, llvm::ArrayRef,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&, bool)
(/usr/local/bin/clang-3.7+0x1fcca3e)
#34 0x1f2afd4
clang::Sema::AddMethodTemplateCandidate(clang::FunctionTemplateDecl*,
clang::DeclAccessPair, clang::CXXRecordDecl*, clang::TemplateArgumentListInfo*,
clang::QualType, clang::Expr::Classification, llvm::ArrayRef,
clang::OverloadCandidateSet&, bool, bool) (/usr/local/bin/clang-3.7+0x1f2afd4)
#35 0x1f3f679 clang::Sema::BuildCallToMemberFunction(clang::Scope*,
clang::Expr*, clang::SourceLocation, llvm::MutableArrayRef,
clang::SourceLocation) (/usr/local/bin/clang-3.7+0x1f3f679)
#36 0x1df16d6 clang::Sema::ActOnCallExpr(clang::Scope*, clang::Expr*,
clang::SourceLocation, llvm::MutableArrayRef,
clang::SourceLocation, clang::Expr*, bool) (/usr/local/bin/clang-3.7+0x1df16d6)
#37 0x20088b7 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*)
(/usr/local/bin/clang-3.7+0x20088b7)
#38 0x1ffa3d0 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformExpr(clang::Expr*)
(/usr/local/bin/clang-3.7+0x1ffa3d0)
#39 0x1ff1dfd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff1dfd)
#40 0x1ff089f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*)
(/usr/local/bin/clang-3.7+0x1ff089f)
#41 0x2007b12 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArgument(clang::TemplateArgumentLoc
const&, clang::TemplateArgumentLoc&) (/usr/local/bin/clang-3.7+0x2007b12)
#42 0x2006278 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName)
(/usr/local/bin/clang-3.7+0x2006278)
#43 0x2005caf clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTSIInObjectScope(clang::TypeLoc,
clang::QualType, clang::NamedDecl*, clang::CXXScopeSpec&)
(/usr/local/bin/clang-3.7+0x2005caf)
#44 0x1ffbb6f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformNestedNameSpecifierLoc(clang::NestedNameSpecifierLoc,
clang::QualType, clang::NamedDecl*) (/usr/local/bin/clang-3.7+0x1ffbb6f)
#45 0x1ff24ec clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff24ec)
#46 0x1ff089f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*)
(/usr/local/bin/clang-3.7+0x1ff089f)
#47 0x2007b12 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArgument(clang::TemplateArgumentLoc
const&, clang::TemplateArgumentLoc&) (/usr/local/bin/clang-3.7+0x2007b12)
#48 0x20104b3 bool clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArguments(clang::TemplateArgumentLoc const*, clang::TemplateArgumentLoc const*,
clang::TemplateArgumentListInfo&) (/usr/local/bin/clang-3.7+0x20104b3)
#49 0x1ffc9b7 clang::Sema::Subst(clang::TemplateArgumentLoc const*, unsigned
int, clang::TemplateArgumentListInfo&, clang::MultiLevelTemplateArgumentList
const&) (/usr/local/bin/clang-3.7+0x1ffc9b7)
#50 0x1fc8b52 FinishTemplateArgumentDeduction(clang::Sema&,
clang::ClassTemplatePartialSpecializationDecl*, clang::TemplateArgumentList
const&, llvm::SmallVectorImpl&,
clang::sema::TemplateDeductionInfo&) (/usr/local/bin/clang-3.7+0x1fc8b52)
#51 0x1fc8696
clang::Sema::DeduceTemplateArguments(clang::ClassTemplatePartialSpecializationDecl*,
clang::TemplateArgumentList const&, clang::sema::TemplateDeductionInfo&)
(/usr/local/bin/clang-3.7+0x1fc8696)
#52 0x1ff8f1b
clang::Sema::InstantiateClassTemplateSpecialization(clang::SourceLocation,
clang::ClassTemplateSpecializationDecl*, clang::TemplateSpecializationKind,
bool) (/usr/local/bin/clang-3.7+0x1ff8f1b)
#53 0x204951e clang::Sema::RequireCompleteTypeImpl(clang::SourceLocation,
clang::QualType, clang::Sema::TypeDiagnoser&)
(/usr/local/bin/clang-3.7+0x204951e)
#54 0x2049210 clang::Sema::RequireCompleteType(clang::SourceLocation,
clang::QualType, clang::Sema::TypeDiagnoser&)
(/usr/local/bin/clang-3.7+0x2049210)
#55 0x1d78926 clang::Sema::CheckBaseSpecifier(clang::CXXRecordDecl*,
clang::SourceRange, bool, clang::AccessSpecifier, clang::TypeSourceInfo*,
clang::SourceLocation) (/usr/local/bin/clang-3.7+0x1d78926)
#56 0x1ff70d6 clang::Sema::SubstBaseSpecifiers(clang::CXXRecordDecl*,
clang::CXXRecordDecl*, clang::MultiLevelTemplateArgumentList const&)
(/usr/local/bin/clang-3.7+0x1ff70d6)
#57 0x1ff74a7 clang::Sema::InstantiateClass(clang::SourceLocation,
clang::CXXRecordDecl*, clang::CXXRecordDecl*,
clang::MultiLevelTemplateArgumentList const&,
clang::TemplateSpecializationKind, bool) (/usr/local/bin/clang-3.7+0x1ff74a7)
#58 0x1ff9328
clang::Sema::InstantiateClassTemplateSpecialization(clang::SourceLocation,
clang::ClassTemplateSpecializationDecl*, clang::TemplateSpecializationKind,
bool) (/usr/local/bin/clang-3.7+0x1ff9328)
#59 0x204951e clang::Sema::RequireCompleteTypeImpl(clang::SourceLocation,
clang::QualType, clang::Sema::TypeDiagnoser&)
(/usr/local/bin/clang-3.7+0x204951e)
#60 0x2049210 clang::Sema::RequireCompleteType(clang::SourceLocation,
clang::QualType, clang::Sema::TypeDiagnoser&)
(/usr/local/bin/clang-3.7+0x2049210)
#61 0x1c92aa0 clang::Sema::RequireCompleteDeclContext(clang::CXXScopeSpec&,
clang::DeclContext*) (/usr/local/bin/clang-3.7+0x1c92aa0)
#62 0x1df8761
clang::Sema::BuildQualifiedDeclarationNameExpr(clang::CXXScopeSpec&,
clang::DeclarationNameInfo const&, bool, clang::TypeSourceInfo**)
(/usr/local/bin/clang-3.7+0x1df8761)
#63 0x2008ad1 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformDependentScopeDeclRefExpr(clang::DependentScopeDeclRefExpr*,
bool, clang::TypeSourceInfo**) (/usr/local/bin/clang-3.7+0x2008ad1)
#64 0x2007aab clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArgument(clang::TemplateArgumentLoc
const&, clang::TemplateArgumentLoc&) (/usr/local/bin/clang-3.7+0x2007aab)
#65 0x200649e clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName)
(/usr/local/bin/clang-3.7+0x200649e)
#66 0x1ff242a clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff242a)
#67 0x1ff1f2e clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff1f2e)
#68 0x1ff089f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*)
(/usr/local/bin/clang-3.7+0x1ff089f)
#69 0x1fffe7c clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCXXUnresolvedConstructExpr(clang::CXXUnresolvedConstructExpr*)
(/usr/local/bin/clang-3.7+0x1fffe7c)
#70 0x1ffb4e4 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformExprs(clang::Expr**, unsigned int,
bool, llvm::SmallVectorImpl&, bool*)
(/usr/local/bin/clang-3.7+0x1ffb4e4)
#71 0x200883f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*)
(/usr/local/bin/clang-3.7+0x200883f)
#72 0x1ffa3d0 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformExpr(clang::Expr*)
(/usr/local/bin/clang-3.7+0x1ffa3d0)
#73 0x2007aab clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArgument(clang::TemplateArgumentLoc
const&, clang::TemplateArgumentLoc&) (/usr/local/bin/clang-3.7+0x2007aab)
#74 0x2006278 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName)
(/usr/local/bin/clang-3.7+0x2006278)
#75 0x2005caf clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTSIInObjectScope(clang::TypeLoc,
clang::QualType, clang::NamedDecl*, clang::CXXScopeSpec&)
(/usr/local/bin/clang-3.7+0x2005caf)
#76 0x1ffbb6f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformNestedNameSpecifierLoc(clang::NestedNameSpecifierLoc,
clang::QualType, clang::NamedDecl*) (/usr/local/bin/clang-3.7+0x1ffbb6f)
#77 0x1ff24ec clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff24ec)
#78 0x1ff089f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*)
(/usr/local/bin/clang-3.7+0x1ff089f)
#79 0x1ff3fbb clang::Sema::SubstType(clang::QualType,
clang::MultiLevelTemplateArgumentList const&, clang::SourceLocation,
clang::DeclarationName) (/usr/local/bin/clang-3.7+0x1ff3fbb)
#80 0x1f8b1e9 clang::Sema::CheckTemplateIdType(clang::TemplateName,
clang::SourceLocation, clang::TemplateArgumentListInfo&)
(/usr/local/bin/clang-3.7+0x1f8b1e9)
#81 0x2006a68 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName)
(/usr/local/bin/clang-3.7+0x2006a68)
#82 0x1ff242a clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff242a)
#83 0x1ff089f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*)
(/usr/local/bin/clang-3.7+0x1ff089f)
#84 0x1ff3fbb clang::Sema::SubstType(clang::QualType,
clang::MultiLevelTemplateArgumentList const&, clang::SourceLocation,
clang::DeclarationName) (/usr/local/bin/clang-3.7+0x1ff3fbb)
#85 0x1f92eb2 clang::Sema::CheckTemplateArgument(clang::NamedDecl*,
clang::TemplateArgumentLoc&, clang::NamedDecl*, clang::SourceLocation,
clang::SourceLocation, unsigned int,
llvm::SmallVectorImpl&,
clang::Sema::CheckTemplateArgumentKind) (/usr/local/bin/clang-3.7+0x1f92eb2)
#86 0x1fcadcb
clang::Sema::FinishTemplateArgumentDeduction(clang::FunctionTemplateDecl*,
llvm::SmallVectorImpl&, unsigned int,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&,
llvm::SmallVectorImpl const*, bool)
(/usr/local/bin/clang-3.7+0x1fcadcb)
#87 0x1fcca3e
clang::Sema::DeduceTemplateArguments(clang::FunctionTemplateDecl*,
clang::TemplateArgumentListInfo*, llvm::ArrayRef,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&, bool)
(/usr/local/bin/clang-3.7+0x1fcca3e)
#88 0x1f2b473
clang::Sema::AddTemplateOverloadCandidate(clang::FunctionTemplateDecl*,
clang::DeclAccessPair, clang::TemplateArgumentListInfo*,
llvm::ArrayRef, clang::OverloadCandidateSet&, bool, bool)
(/usr/local/bin/clang-3.7+0x1f2b473)
#89 0x1f3a458
clang::Sema::AddOverloadedCallCandidates(clang::UnresolvedLookupExpr*,
llvm::ArrayRef, clang::OverloadCandidateSet&, bool)
(/usr/local/bin/clang-3.7+0x1f3a458)
#90 0x1f3a55c clang::Sema::buildOverloadedCallSet(clang::Scope*, clang::Expr*,
clang::UnresolvedLookupExpr*, llvm::MutableArrayRef,
clang::SourceLocation, clang::OverloadCandidateSet*,
clang::ActionResult*) (/usr/local/bin/clang-3.7+0x1f3a55c)
#91 0x1f3a87d clang::Sema::BuildOverloadedCallExpr(clang::Scope*, clang::Expr*,
clang::UnresolvedLookupExpr*, clang::SourceLocation,
llvm::MutableArrayRef, clang::SourceLocation, clang::Expr*, bool)
(/usr/local/bin/clang-3.7+0x1f3a87d)
#92 0x1df123d clang::Sema::ActOnCallExpr(clang::Scope*, clang::Expr*,
clang::SourceLocation, llvm::MutableArrayRef,
clang::SourceLocation, clang::Expr*, bool) (/usr/local/bin/clang-3.7+0x1df123d)
#93 0x20088b7 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*)
(/usr/local/bin/clang-3.7+0x20088b7)
#94 0x1ffa3d0 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformExpr(clang::Expr*)
(/usr/local/bin/clang-3.7+0x1ffa3d0)
#95 0x1ff1dfd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) (/usr/local/bin/clang-3.7+0x1ff1dfd)
#96 0x1ff089f clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*)
(/usr/local/bin/clang-3.7+0x1ff089f)
#97 0x1ff07bb clang::Sema::SubstType(clang::TypeSourceInfo*,
clang::MultiLevelTemplateArgumentList const&, clang::SourceLocation,
clang::DeclarationName) (/usr/local/bin/clang-3.7+0x1ff07bb)
#98 0x2014095
clang::TemplateDeclInstantiator::InstantiateTypedefNameDecl(clang::TypedefNameDecl*,
bool) (/usr/local/bin/clang-3.7+0x2014095)
#99 0x2015101
clang::TemplateDeclInstantiator::VisitTypeAliasDecl(clang::TypeAliasDecl*)
(/usr/local/bin/clang-3.7+0x2015101)
#100 0x201cec8 clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&)
(/usr/local/bin/clang-3.7+0x201cec8)
#101 0x200d066 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformDeclStmt(clang::DeclStmt*)
(/usr/local/bin/clang-3.7+0x200d066)
#102 0x200a6a1 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCompoundStmt(clang::CompoundStmt*,
bool) (/usr/local/bin/clang-3.7+0x200a6a1)
#103 0x1ff9d31 clang::Sema::SubstStmt(clang::Stmt*,
clang::MultiLevelTemplateArgumentList const&)
(/usr/local/bin/clang-3.7+0x1ff9d31)
#104 0x2020ee1
clang::Sema::InstantiateFunctionDefinition(clang::SourceLocation,
clang::FunctionDecl*, bool, bool) (/usr/local/bin/clang-3.7+0x2020ee1)
#105 0x1e25c89 clang::Sema::MarkFunctionReferenced(clang::SourceLocation,
clang::FunctionDecl*, bool) (/usr/local/bin/clang-3.7+0x1e25c89)
#106 0x1e293b2 MarkExprReferenced(clang::Sema&, clang::SourceLocation,
clang::Decl*, clang::Expr*, bool) (/usr/local/bin/clang-3.7+0x1e293b2)
#107 0x1f3a063 clang::Sema::FixOverloadedFunctionReference(clang::Expr*,
clang::DeclAccessPair, clang::FunctionDecl*)
(/usr/local/bin/clang-3.7+0x1f3a063)
#108 0x1f3aa05 FinishOverloadedCallExpr(clang::Sema&, clang::Scope*,
clang::Expr*, clang::UnresolvedLookupExpr*, clang::SourceLocation,
llvm::MutableArrayRef, clang::SourceLocation, clang::Expr*,
clang::OverloadCandidateSet*, clang::OverloadCandidate**,
clang::OverloadingResult, bool) (/usr/local/bin/clang-3.7+0x1f3aa05)
#109 0x1f3a904 clang::Sema::BuildOverloadedCallExpr(clang::Scope*,
clang::Expr*, clang::UnresolvedLookupExpr*, clang::SourceLocation,
llvm::MutableArrayRef, clang::SourceLocation, clang::Expr*, bool)
(/usr/local/bin/clang-3.7+0x1f3a904)
#110 0x1df123d clang::Sema::ActOnCallExpr(clang::Scope*, clang::Expr*,
clang::SourceLocation, llvm::MutableArrayRef,
clang::SourceLocation, clang::Expr*, bool) (/usr/local/bin/clang-3.7+0x1df123d)
#111 0x20088b7 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*)
(/usr/local/bin/clang-3.7+0x20088b7)
#112 0x1ffa3d0 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformExpr(clang::Expr*)
(/usr/local/bin/clang-3.7+0x1ffa3d0)
#113 0x1ff9fe1 clang::Sema::SubstExpr(clang::Expr*,
clang::MultiLevelTemplateArgumentList const&)
(/usr/local/bin/clang-3.7+0x1ff9fe1)
#114 0x2017040
clang::TemplateDeclInstantiator::VisitStaticAssertDecl(clang::StaticAssertDecl*)
(/usr/local/bin/clang-3.7+0x2017040)
#115 0x201cec8 clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&)
(/usr/local/bin/clang-3.7+0x201cec8)
#116 0x200d066 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformDeclStmt(clang::DeclStmt*)
(/usr/local/bin/clang-3.7+0x200d066)
#117 0x200a6a1 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCompoundStmt(clang::CompoundStmt*,
bool) (/usr/local/bin/clang-3.7+0x200a6a1)
#118 0x1ff9d31 clang::Sema::SubstStmt(clang::Stmt*,
clang::MultiLevelTemplateArgumentList const&)
(/usr/local/bin/clang-3.7+0x1ff9d31)
#119 0x2020ee1
clang::Sema::InstantiateFunctionDefinition(clang::SourceLocation,
clang::FunctionDecl*, bool, bool) (/usr/local/bin/clang-3.7+0x2020ee1)
#120 0x1fd1145 clang::Sema::DeduceReturnType(clang::FunctionDecl*,
clang::SourceLocation, bool) (/usr/local/bin/clang-3.7+0x1fd1145)
#121 0x1deb24b clang::Sema::DiagnoseUseOfDecl(clang::NamedDecl*,
clang::SourceLocation, clang::ObjCInterfaceDecl const*, bool)
(/usr/local/bin/clang-3.7+0x1deb24b)
#122 0x1f3c079 CreateFunctionRefExpr(clang::Sema&, clang::FunctionDecl*,
clang::NamedDecl*, bool, clang::SourceLocation, clang::DeclarationNameLoc
const&) (/usr/local/bin/clang-3.7+0x1f3c079)
#123 0x1f415bc clang::Sema::BuildCallToObjectOfClassType(clang::Scope*,
clang::Expr*, clang::SourceLocation, llvm::MutableArrayRef,
clang::SourceLocation) (/usr/local/bin/clang-3.7+0x1f415bc)
#124 0x1df15ee clang::Sema::ActOnCallExpr(clang::Scope*, clang::Expr*,
clang::SourceLocation, llvm::MutableArrayRef,
clang::SourceLocation, clang::Expr*, bool) (/usr/local/bin/clang-3.7+0x1df15ee)
#125 0x1b239c8
clang::Parser::ParsePostfixExpressionSuffix(clang::ActionResult) (/usr/local/bin/clang-3.7+0x1b239c8)
#126 0x1b286c7 clang::Parser::ParseCastExpression(bool, bool, bool&,
clang::Parser::TypeCastState) (/usr/local/bin/clang-3.7+0x1b286c7)
#127 0x1b21972
clang::Parser::ParseAssignmentExpression(clang::Parser::TypeCastState)
(/usr/local/bin/clang-3.7+0x1b21972)
#128 0x1b218d9 clang::Parser::ParseExpression(clang::Parser::TypeCastState)
(/usr/local/bin/clang-3.7+0x1b218d9)
#129 0x1b57d7c clang::Parser::ParseExprStatement()
(/usr/local/bin/clang-3.7+0x1b57d7c)
#130 0x1b5797e
clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector&, bool, clang::SourceLocation*, clang::Parser::ParsedAttributesWithRange&)
(/usr/local/bin/clang-3.7+0x1b5797e)
#131 0x1b56b9f
clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector&, bool, clang::SourceLocation*) (/usr/local/bin/clang-3.7+0x1b56b9f)
#132 0x1b5cf64 clang::Parser::ParseCompoundStatementBody(bool)
(/usr/local/bin/clang-3.7+0x1b5cf64)
#133 0x1b5d816 clang::Parser::ParseFunctionStatementBody(clang::Decl*,
clang::Parser::ParseScope&) (/usr/local/bin/clang-3.7+0x1b5d816)
#134 0x1af08cc
clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&,
clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*)
(/usr/local/bin/clang-3.7+0x1af08cc)
#135 0x1affb7d clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, unsigned
int, clang::SourceLocation*, clang::Parser::ForRangeInit*)
(/usr/local/bin/clang-3.7+0x1affb7d)
#136 0x1aefb3d
clang::Parser::ParseDeclOrFunctionDefInternal(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec&, clang::AccessSpecifier)
(/usr/local/bin/clang-3.7+0x1aefb3d)
#137 0x1aef640
clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*, clang::AccessSpecifier)
(/usr/local/bin/clang-3.7+0x1aef640)
#138 0x1aeea54
clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*) (/usr/local/bin/clang-3.7+0x1aeea54)
#139 0x1aee028
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr&)
(/usr/local/bin/clang-3.7+0x1aee028)
#140 0x1aeae36 clang::ParseAST(clang::Sema&, bool, bool)
(/usr/local/bin/clang-3.7+0x1aeae36)
#141 0x1441f39 clang::FrontendAction::Execute()
(/usr/local/bin/clang-3.7+0x1441f39)
#142 0x14188e3 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
(/usr/local/bin/clang-3.7+0x14188e3)
#143 0x14adb0c clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
(/usr/local/bin/clang-3.7+0x14adb0c)
#144 0x70b17f cc1_main(llvm::ArrayRef, char const*, void*)
(/usr/local/bin/clang-3.7+0x70b17f)
#145 0x70a6a1 main (/usr/local/bin/clang-3.7+0x70a6a1)
#146 0x7fedf6297b95 __libc_start_main (/lib64/libc.so.6+0x24b95)
#147 0x707b0d _start (/usr/local/bin/clang-3.7+0x707b0d)
Stack dump:
0. Program arguments: /usr/local/bin/clang-3.7 -cc1 -triple
x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free
-disable-llvm-verifier -main-file-name matrix_test.cpp -mrelocation-model
static -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose
-mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu haswell
-target-feature -sse4a -target-feature -avx512bw -target-feature +cx16
-target-feature -tbm -target-feature -adx -target-feature -fma4 -target-feature
-avx512vl -target-feature -prfchw -target-feature +bmi2 -target-feature
-avx512pf -target-feature +fsgsbase -target-feature +avx -target-feature
-avx512cd -target-feature +rtm -target-feature +popcnt -target-feature +fma
-target-feature +bmi -target-feature +aes -target-feature +rdrnd
-target-feature +sse4.1 -target-feature +sse4.2 -target-feature +avx2
-target-feature -avx512er -target-feature +sse -target-feature +lzcnt
-target-feature +pclmul -target-feature -avx512f -target-feature +f16c
-target-feature +ssse3 -target-feature +mmx -target-feature +cmov
-target-feature -xop -target-feature -rdseed -target-feature +movbe
-target-feature +hle -target-feature -sha -target-feature +sse2 -target-feature
+sse3 -target-feature -avx512dq -dwarf-column-info -coverage-file
/home/rnburn/work/echo/matrix/CMakeFiles/matrix-test.dir/unittest/matrix_test.cpp.o
-resource-dir /usr/local/bin/../lib/clang/3.7.0 -D MKL_ILP64 -I
/home/rnburn/proj/echo/matrix/include -I /opt/intel/mkl/include
-internal-isystem /usr/local/bin/../include/c++/v1 -internal-isystem
/usr/local/include -internal-isystem /usr/local/bin/../lib/clang/3.7.0/include
-internal-externc-isystem /include -internal-externc-isystem /usr/include
-std=c++14 -fdeprecated-macro -fdebug-compilation-dir
/home/rnburn/work/echo/matrix -ferror-limit 19 -fmessage-length 125
-mstackrealign -fobjc-runtime=gcc -fcxx-exceptions -fexceptions
-fdiagnostics-show-option -fcolor-diagnostics -o
CMakeFiles/matrix-test.dir/unittest/matrix_test.cpp.o -x c++
/home/rnburn/proj/echo/matrix/unittest/matrix_test.cpp
1. /home/rnburn/proj/echo/matrix/unittest/matrix_test.cpp:132:3: current
parser token ')'
2. /home/rnburn/proj/echo/matrix/unittest/matrix_test.cpp:122:31: parsing
function body '____C_A_T_C_H____T_E_S_T____122'
3. /home/rnburn/proj/echo/matrix/unittest/matrix_test.cpp:122:31: in
compound statement ('{}')
clang-3.7: error: unable to execute command: Segmentation fault
clang-3.7: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 3.7.0 (trunk 234142)
Target: x86_64-unknown-linux-gnu
Thread model: posix
clang-3.7: note: diagnostic msg: PLEASE submit a bug report to
http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and
associated run script.
clang-3.7: note: diagnostic msg:
********************
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 05:19:06 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 12:19:06 +0000
Subject: [LLVMbugs] [Bug 23134] New: Use of uninitialized
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23134
Bug ID: 23134
Summary: Use of uninitialized
Product: lld
Version: unspecified
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: All Bugs
Assignee: unassignedbugs at nondot.org
Reporter: rafael.espindola at gmail.com
CC: llvmbugs at cs.uiuc.edu, ruiu at google.com
Classification: Unclassified
From
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-bootstrap/builds/6819/steps/annotate/logs/stdio
FAIL: lld :: Driver/undef-basic.objtxt (26 of 756)
******************** TEST 'lld :: Driver/undef-basic.objtxt' FAILED
********************
Script:
--
lld -flavor gnu -u undefinedsymbol -e entrysymbol
/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/lld/test/Driver/undef-basic.objtxt
--output-filetype=yaml --noinhibit-exec | FileCheck
/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/lld/test/Driver/undef-basic.objtxt
--
Exit Code: 2
Command Output (stderr):
--
==27811==WARNING: MemorySanitizer: use-of-uninitialized-value
#0 0x7f3d5a4610a3 in allowLinkWithDynamicLibraries
/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/lld/include/lld/ReaderWriter/ELFLinkingContext.h:139:45
#1 0x7f3d5a4610a3 in lld::GnuLdDriver::parse(int, char const**,
std::__1::unique_ptr >&, llvm::raw_ostream&)
/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/lld/lib/Driver/GnuLdDriver.cpp:632
#2 0x7f3d5a455e04 in lld::GnuLdDriver::linkELF(int, char const**,
llvm::raw_ostream&)
/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/lld/lib/Driver/GnuLdDriver.cpp:170:8
#3 0x7f3d5a3fea61 in lld::UniversalDriver::link(int, char const**,
llvm::raw_ostream&)
/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/lld/lib/Driver/UniversalDriver.cpp:203:12
#4 0x7f3d5a3fd9ca in main
/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/lld/tools/lld/lld.cpp:35:10
#5 0x7f3d58c35eac in __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x1eeac)
#6 0x7f3d5a398b40 in _start
(/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build_msan/bin/lld+0x9fb40)
SUMMARY: MemorySanitizer: use-of-uninitialized-value
/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/lld/include/lld/ReaderWriter/ELFLinkingContext.h:139:45
in allowLinkWithDynamicLibraries
Exiting
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 08:28:21 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 15:28:21 +0000
Subject: [LLVMbugs] [Bug 22815] Inconsistent logic for deciding if a
relocation is necessary
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=22815
Rafael Ávila de Espíndola changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #1 from Rafael Ávila de Espíndola ---
Fixed in r234165.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 09:04:18 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 16:04:18 +0000
Subject: [LLVMbugs] [Bug 23131] std::function constructor unable to take
std::allocator
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23131
Marshall Clow (home) changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |INVALID
--- Comment #2 from Marshall Clow (home) ---
This is not a libc++ bug.
The allocator argument for the constructor to std::function must satisfy the
allocator requirements (see func.wrap.func.con/1).
std::allocator, despite its name, does not satisfy those requirements.
[ Aside: It cannot satisfy those requirements; because it would have to be able
to construct and destroy objects of type `void` ]
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 09:42:31 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 16:42:31 +0000
Subject: [LLVMbugs] [Bug 22717] Decouple memory management and external
symbol resolution.
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=22717
Lang Hames changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #1 from Lang Hames ---
This was fixed by r233509.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 10:33:57 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 17:33:57 +0000
Subject: [LLVMbugs] [Bug 23135] New: [C++11/14] Body of constexpr function
templates instantiated too eagerly in unevaluated operands
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23135
Bug ID: 23135
Summary: [C++11/14] Body of constexpr function templates
instantiated too eagerly in unevaluated operands
Product: clang
Version: trunk
Hardware: All
OS: All
Status: NEW
Keywords: compile-fail
Severity: normal
Priority: P
Component: C++11
Assignee: unassignedclangbugs at nondot.org
Reporter: gonzalobg88 at gmail.com
CC: dgregor at apple.com, llvmbugs at cs.uiuc.edu,
richard-llvm at metafoo.co.uk
Classification: Unclassified
GCC has the same bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52269
~Quoting that bug report:
Ai Azuma wrote:
The following well-formed code cannot be compiled with clang-trunk and the
-std=c++11 (and -std=c++14) flags.
template
int f(T x)
{
return x.get();
}
template
constexpr int g(T x)
{
return x.get();
}
int main() {
// O.K. The body of `f' is not required.
decltype(f(0)) a;
// Seems to instantiate the body of `g'
// and results in an error.
decltype(g(0)) b;
return 0;
}
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 11:19:18 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 18:19:18 +0000
Subject: [LLVMbugs] [Bug 23136] New: clang seems to silently ignore the weak
attribute (mingw)
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23136
Bug ID: 23136
Summary: clang seems to silently ignore the weak attribute
(mingw)
Product: clang
Version: trunk
Hardware: PC
OS: Windows XP
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: t.poechtrager at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
$ cat test.cpp
#include
#include
#include
#ifdef WEAK
#undef WEAK
#define WEAK __attribute__((weak))
#else
#define WEAK
#endif
WEAK void *operator new(size_t size) throw()
{
void *p = malloc(size);
if(!p) abort();
return p;
}
WEAK void *operator new[](size_t size) throw()
{
void *p = malloc(size);
if(!p) abort();
return p;
}
WEAK void operator delete(void *p) throw() { if(p) free(p); }
WEAK void operator delete(void *p, size_t) throw() { if(p) free(p); }
WEAK void operator delete[](void *p) throw() { if(p) free(p); }
WEAK void operator delete[](void *p, size_t) throw() { if(p) free(p); }
WEAK int main()
{
new char[100];
}
$ i686-w64-mingw32-clang++ test.cpp -Weverything -Wno-missing-prototypes -c -o
1.o
$ i686-w64-mingw32-clang++ test.cpp -Weverything -Wno-missing-prototypes -c -o
2.o -DWEAK
$ LC_ALL=C i686-w64-mingw32-clang++ 1.o 2.o
2.o:(.text+0x0): multiple definition of `operator new(unsigned int)'
1.o:(.text+0x0): first defined here
2.o:(.text+0x40): multiple definition of `operator new[](unsigned int)'
1.o:(.text+0x40): first defined here
2.o:(.text+0x80): multiple definition of `operator delete(void*)'
1.o:(.text+0x80): first defined here
2.o:(.text+0xb0): multiple definition of `operator delete(void*, unsigned int)'
1.o:(.text+0xb0): first defined here
2.o:(.text+0xe0): multiple definition of `operator delete[](void*)'
1.o:(.text+0xe0): first defined here
2.o:(.text+0x110): multiple definition of `operator delete[](void*, unsigned
int)'
1.o:(.text+0x110): first defined here
2.o:(.text+0x140): multiple definition of `main'
1.o:(.text+0x140): first defined here
collect2: error: ld returned 1 exit status
clang-3.7: error: linker (via gcc) command failed with exit code 1 (use -v to
see invocation)
mingw-g++ handles this correctly:
$ i686-w64-mingw32-g++ test.cpp -c -o 1.o
$ i686-w64-mingw32-g++ test.cpp -c -o 2.o -DWEAK
$ LC_ALL=C i686-w64-mingw32-g++ 1.o 2.o && echo $?
0
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 14:07:22 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 21:07:22 +0000
Subject: [LLVMbugs] [Bug 23122] frameescape intrinsic leads to the backend
crashing
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23122
Reid Kleckner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #3 from Reid Kleckner ---
Really closing...
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 15:36:03 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 22:36:03 +0000
Subject: [LLVMbugs] [Bug 23137] New: Assertion:
SymbolMap.find(&A_SD.getSymbol()) != SymbolMap.end() && "Symbol must
already have been defined in ExecutePostLayoutBinding!",
file lib\MC\WinCOFFObjectWriter.cpp, line 690
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23137
Bug ID: 23137
Summary: Assertion: SymbolMap.find(&A_SD.getSymbol()) !=
SymbolMap.end() && "Symbol must already have been
defined in ExecutePostLayoutBinding!", file
lib\MC\WinCOFFObjectWriter.cpp, line 690
Product: clang
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: douglas_yung at playstation.sony.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
The following code when compiled targeting Windows causes an assertion failure
in the compiler:
//=================
//
// Compile command: clang -cc1 -triple x86_64-pc-windows-msvc -emit-obj
-fcxx-exceptions -fexceptions
//
namespace std {
inline void A( int* C) {}
inline void B(int* C ) { A( C); }
class D {
public:
int *E;
void F(int G) { try { B(this->E ); } catch (...) {} }
};
}
void foo()
{
std::D v01;
v01.F(1024);
}
//=================
When using clang (r234143) built using Visual Studio 2013 Update 4 on my
Windows 7 x64 machine, it produces the following assertion failure:
Assertion failed: SymbolMap.find(&A_SD.getSymbol()) != SymbolMap.end() &&
"Symbol must already have been defined in ExecutePostLayoutBinding!", file
C:\src\llvm\llvm\lib\MC\WinCOFFObjectWriter.cpp, line 690
0x000000013FC8FF55 (0x0000000000000016 0x000007FE23B46E8B 0x0000000000000000
0x0000000077929CAA)
0x000007FEE5A3EE1D (0x000007FE00000001 0x0000000000000000 0x0000000142529C30
0x0000000000000194), raise() + 0x1E9 bytes(s)
0x000007FEE5A44A14 (0x000007FEE5AAC4D0 0x0000000142529C30 0x000000014252A1D0
0x0000000142529C30), abort() + 0x18 bytes(s)
0x000007FEE5A45D5F (0x0000000000E96808 0x0000000000A7D0D0 0x0000000000ED3C10
0x0000000000E96808), _wassert() + 0x94F bytes(s)
0x000000013FAE249A (0x0000000000CC3250 0x0000000000E95C00 0x0000000000EFBE00
0x0000000000EAF9F0)
0x000000013FAC19D3 (0x0000000000000000 0x0000000000CC3250 0x0000000000E95C00
0x0000000000EAFA50)
0x000000013FABC1ED (0x0000000000CC24C0 0x0000000000E94960 0x0000000000A7D450
0x0000000000000016)
0x000000013FFC0D20 (0x0000000000000000 0x0000000000CC24B0 0x0000000000E68AA0
0x0000000000CC2588)
0x000000013F7DB91A (0x0000000000E68AA0 0x0000000000000002 0x0000000000A7D679
0x0000000000000002)
0x000000013F7E4079 (0x0000000000E51D60 0x0000000000E9B6A0 0x0000000000000000
0x0000000000000000)
0x000000013F7E29B9 (0x0000000000CC2478 0x0000000000A7D7B9 0x0000000000A7D880
0x00000001425C91B8)
0x0000000140218AE6 (0x0000000000C890B0 0x0000000000C890B0 0x0000000000A7D910
0x0000000077801A4A)
0x0000000140218CB2 (0x0000000000CC5E40 0x0000000000CC5E40 0x0000000000C8DFD0
0x0000000000CEB300)
0x0000000140200503 (0x0000000000CEB300 0x0000000000E294B0 0x0000000000000000
0x0000000000000000)
0x0000000140A227D5 (0x0000000000000000 0x0000000000A7DB00 0x0000000000C84670
0xFFFFFFFF00000002)
0x000000013FEF152D (0x0000000000C84670 0x0000000000000000 0x000000000000006A
0x0000000000000005)
0x00000001401FFE93 (0x0000000142BDF568 0x0000000000000000 0x0000000000000001
0x0000000000000000)
0x000000013FEF13D9 (0x0000000000000000 0x0000000000C82300 0x0000000000C85A90
0x0000000000000000)
0x000000013FEBA19D (0x000000013FC98B60 0x0000000000C84670 0x0000000000A7DE69
0x000000013FC98C50)
0x000000013FFB832D (0x0000000000A7DF18 0x0000000000C82180 0x0000000000C82220
0x0000000000C8DB48)
0x000000013F22337E (0x0000000000000040 0x0000000000000000 0x0000000142BC5020
0x0000000000A7E5E0)
0x000000013F2197FA (0x0000000000000008 0x0000000000C8CB22 0x0000000000A7E640
0x0000000000000000)
0x000000013F21F9DE (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000)
0x000000014174A927 (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000)
0x00000000777F59ED (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000), BaseThreadInitThunk() + 0xD bytes(s)
0x000000007792C541 (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000), RtlUserThreadStart() + 0x21 bytes(s)
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 16:07:24 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 06 Apr 2015 23:07:24 +0000
Subject: [LLVMbugs] [Bug 23138] New: Assertion:
isa(OutlinedBB->getTerminator()), file WinEHPrepare.cpp,
line 659
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23138
Bug ID: 23138
Summary: Assertion:
isa(OutlinedBB->getTerminator()),
file WinEHPrepare.cpp, line 659
Product: clang
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: douglas_yung at playstation.sony.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
The following code when compiled targeting Windows causes an assertion failure
in the compiler:
//===========
//
// Compile command: clang -cc1 -triple x86_64-pc-windows-msvc -emit-obj
-fcxx-exceptions -fexceptions
//
namespace std {
inline void alpha( ) {}
class bravo {
public:
void charlie(int delta)
{
echo(delta);
try { alpha( ); } catch (...) { foxtrot(); }
}
void gulf() { try { hotel(); } catch (...) {} }
void echo(int india) { gulf( ); }
void foxtrot() {}
void hotel() {}
};
}
void foo()
{
std::bravo v01;
v01.charlie(1024);
}
//===========
When using a clang (r234143) built on Windows targeting Windows, compiling the
above code produces the following assertion failure:
Assertion failed: isa(OutlinedBB->getTerminator()), file
C:\src\llvm\llvm\lib\CodeGen\WinEHPrepare.cpp, line 659
0x000000014091FF55 (0x0000000000000016 0x000007FEDEA7A68F 0x0000000000000000
0x0000000077929CAA)
0x000007FEE430EE1D (0x000007FE00000001 0x0000000100000000 0x000000014312FD80
0x0000000000000190), raise() + 0x1E9 bytes(s)
0x000007FEE4314A14 (0x000007FEE437C4D0 0x000000014312FD80 0x000000014312FED0
0x000000014312FD80), abort() + 0x18 bytes(s)
0x000007FEE4315D5F (0x0000000002AAA640 0x0000000000CAD550 0x0000000000000002
0x0000000002A3CFD0), _wassert() + 0x94F bytes(s)
0x00000001402E1450 (0x0000000000000000 0x0000000000ACD510 0x0000000000000000
0x0000000002AAA640)
0x00000001402EB014 (0x0000000000CAD550 0x0000000100000001 0x0000000000000004
0x0000000000CAD550)
0x00000001402ECCB4 (0x0000000000000001 0x0000000002A3E6F0 0x0000000002A3E6F0
0x0000000000000000)
0x000000014047346C (0x0000000000000000 0x000000000000000A 0x0000000002A27390
0x0000000000C72548)
0x000000014047370F (0x0000000000000000 0x0000000000ACDA79 0x0000000002A481C0
0x0000000000C72548)
0x0000000140473C60 (0x0000000002A22740 0x0000000002A72E78 0x0000000000000000
0x0000000000000000)
0x00000001404729B9 (0x0000000000C72438 0x0000000000ACDBB9 0x0000000000ACDC80
0x00000001432591B8)
0x0000000140EA8AE6 (0x0000000000C391B0 0x0000000000C391B0 0x0000000000ACDD10
0x0000000077801A4A)
0x0000000140EA8CB2 (0x0000000000C75E00 0x0000000000C75E00 0x0000000000C3DF90
0x0000000000C9B2C0)
0x0000000140E90503 (0x0000000000C9B2C0 0x00000000029F94B0 0x0000000000000000
0x0000000000000000)
0x00000001416B27D5 (0x0000000000000000 0x0000000000ACDF00 0x0000000000C3DBF0
0xFFFFFFFF00000002)
0x0000000140B8152D (0x0000000000C3DBF0 0x0000000000000000 0x000000000000006E
0x0000000000000005)
0x0000000140E8FE93 (0x000000014386F568 0x0000000000000000 0x0000000000000001
0x0000000000000000)
0x0000000140B813D9 (0x0000000000000000 0x0000000000C32400 0x0000000000C35B90
0x0000000000000000)
0x0000000140B4A19D (0x0000000140928B60 0x0000000000C3DBF0 0x0000000000ACE269
0x0000000140928C50)
0x0000000140C4832D (0x0000000000ACE318 0x0000000000C32280 0x0000000000C32320
0x0000000000C347C8)
0x000000013FEB337E (0x0000000000000040 0x0000000000000000 0x0000000143855020
0x0000000000ACE9E0)
0x000000013FEA97FA (0x0000000000000008 0x0000000000C3CC22 0x0000000000ACEA40
0x0000000000000000)
0x000000013FEAF9DE (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000)
0x00000001423DA927 (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000)
0x00000000777F59ED (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000), BaseThreadInitThunk() + 0xD bytes(s)
0x000000007792C541 (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000), RtlUserThreadStart() + 0x21 bytes(s)
This bug was found at the same time as bug 23137 and may be related.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 18:30:29 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 01:30:29 +0000
Subject: [LLVMbugs] [Bug 23036] ignoring unknown argument:
--enable-new-dtags / RUNPATH support needed
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23036
emaste at freebsd.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #1 from emaste at freebsd.org ---
http://reviews.llvm.org/D8836
Support added in r234240
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 19:40:47 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 02:40:47 +0000
Subject: [LLVMbugs] [Bug 22042] Dependent alignof crashes
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=22042
David Majnemer changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
Assignee|unassignedclangbugs at nondot. |david.majnemer at gmail.com
|org |
--- Comment #1 from David Majnemer ---
Fixed in r234280.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 20:48:20 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 03:48:20 +0000
Subject: [LLVMbugs] [Bug 23140] New: Typo correction of pointer-to-member
operand raises "placeholders should have been weeded out by now" assertion
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23140
Bug ID: 23140
Summary: Typo correction of pointer-to-member operand raises
"placeholders should have been weeded out by now"
assertion
Product: clang
Version: unspecified
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: C++
Assignee: unassignedclangbugs at nondot.org
Reporter: david.majnemer at gmail.com
CC: dgregor at apple.com, llvmbugs at cs.uiuc.edu
Classification: Unclassified
consider:
auto lneed = gned.*[] {};
compile with:
~/llvm/Debug+Asserts/bin/clang -cc1 t.cpp -std=c++11
'gned' has been typo corrected to 'lneed':
UnresolvedLookupExpr 0x7483c00 '' lvalue (no ADL) =
'lneed' empty
however, semantic analysis continues resulting in this assertion.
instead, I would expect the source to be treated like:
auto lneed = lneed.*[] {};
and raise a diagnostic like:
variable 'lneed' declared with 'auto' type cannot appear in its own initializer
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 22:07:11 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 05:07:11 +0000
Subject: [LLVMbugs] [Bug 23141] New: std::bind const-qualifying bound
arguments captured by value when compiled as C++14
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23141
Bug ID: 23141
Summary: std::bind const-qualifying bound arguments captured by
value when compiled as C++14
Product: libc++
Version: 3.6
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: All Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: eniebler at boost.org
CC: llvmbugs at cs.uiuc.edu, mclow.lists at gmail.com
Classification: Unclassified
The following code fails to compile when compiled as C++14:
#include
#include
struct Fun
{
template
void operator()(T && t, U && u) const
{
static_assert(std::is_same::value, "");
}
};
int main()
{
std::bind(Fun{}, std::placeholders::_1, 42)("hello");
}
The error is:
static_assert(std::is_same::value, "");
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/clang-trunk/bin/../include/c++/v1/__functional_base:415:12: note: in
instantiation of function template specialization
'Fun::operator()' requested here
return _VSTD::forward<_Fp>(__f)(_VSTD::forward<_Args>(__args)...);
^
/usr/local/clang-trunk/bin/../include/c++/v1/__config:381:15: note: expanded
from macro '_VSTD'
#define _VSTD std::_LIBCPP_NAMESPACE
^
1 error generated.
When compiled as C++11, the code compiles successfully.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Mon Apr 6 23:02:11 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 06:02:11 +0000
Subject: [LLVMbugs] [Bug 23117] Assertion failure parsing block expressions
with nonnull attributes
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23117
David Majnemer changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #2 from David Majnemer ---
Fixed in r234297.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 01:37:18 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 08:37:18 +0000
Subject: [LLVMbugs] [Bug 23135] [C++11/14] Body of constexpr function
templates instantiated too eagerly in unevaluated operands
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23135
Gonzalo BG changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |INVALID
--- Comment #2 from Gonzalo BG ---
Thanks Richard, that settles it.
I'm closing this as invalid.
Today I learned that constexpr functions are (potentially) instantiated in
unevaluated contexts.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 03:51:25 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 10:51:25 +0000
Subject: [LLVMbugs] [Bug 23143] New: MachineLICM register pressure
calculation incorrect
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23143
Bug ID: 23143
Summary: MachineLICM register pressure calculation incorrect
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Common Code Generator Code
Assignee: unassignedbugs at nondot.org
Reporter: djasper at google.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
The new test test/CodeGen/X86/licm-regpressure.ll shows this behavior
(currently marked as XFAIL). MachineLICM assumes that it is hoisting all of the
GEPs out of the loop under in a low pressure situation, when indeed there is
register pressure.
The cause here is that the RegLimit (for the RegClass GR64) is 12, but each
instruction is assumed to have a cost of only 1.
The problem seems to be that MachineLICM isn't considering the regmasks, i.e.
the registers clobbered by the call.
IR leading to the bad behavior:
%struct.A = type { i32, i32, i32, i32, i32, i32, i32 }
define void @test(i1 %b, %struct.A* %a) nounwind {
entry:
br label %loop-header
loop-header:
br label %loop-body
loop-body:
%0 = getelementptr inbounds %struct.A, %struct.A* %a, i64 0, i32 0
%1 = getelementptr inbounds %struct.A, %struct.A* %a, i64 0, i32 1
%2 = getelementptr inbounds %struct.A, %struct.A* %a, i64 0, i32 2
%3 = getelementptr inbounds %struct.A, %struct.A* %a, i64 0, i32 3
%4 = getelementptr inbounds %struct.A, %struct.A* %a, i64 0, i32 4
%5 = getelementptr inbounds %struct.A, %struct.A* %a, i64 0, i32 5
%6 = getelementptr inbounds %struct.A, %struct.A* %a, i64 0, i32 6
call void @assign(i32* %0)
call void @assign(i32* %1)
call void @assign(i32* %2)
call void @assign(i32* %3)
call void @assign(i32* %4)
call void @assign(i32* %5)
call void @assign(i32* %6)
br i1 %b, label %loop-body, label %loop-exit
loop-exit:
ret void
}
declare void @assign(i32*)
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 06:39:20 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 13:39:20 +0000
Subject: [LLVMbugs] [Bug 23144] New: Problem during "llvm-c-test" build
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23144
Bug ID: 23144
Summary: Problem during "llvm-c-test" build
Product: Build scripts
Version: 3.6
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: cmake
Assignee: unassignedbugs at nondot.org
Reporter: petr_aleksandrov at mail.ru
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14163
--> https://llvm.org/bugs/attachment.cgi?id=14163&action=edit
CMake cache used during build
During build the following errors occurs:
[5/785] Linking C executable bin/llvm-c-test
FAILED: : && /opt/develop/bin/cc -fPIC -Wall -W -Wno-unused-parameter
-Wwrite-strings -Wno-missing-field-initializers -pedantic -Wno-long-long
-Wno-comment -ffunction-sections -fdata-sections -std=gnu99 -Wstrict-prototypes
-O3 -DNDEBUG -Wl,-allow-shlib-undefined -Wl,-O3 -Wl,--gc-sections
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/disassemble.c.o
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/helpers.c.o
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/include-all.c.o
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/main.c.o
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/module.c.o
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/metadata.c.o
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/object.c.o
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/targets.c.o -o bin/llvm-c-test
-rdynamic lib/libLLVM.so -Wl,-rpath,"\$ORIGIN/../lib" && :
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o:calc.c:function
build_from_tokens: error: undefined reference to 'LLVMInt64Type'
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o:calc.c:function
build_from_tokens: error: undefined reference to 'LLVMConstInt'
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o:calc.c:function
build_from_tokens: error: undefined reference to 'LLVMBuildGEP'
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o:calc.c:function
build_from_tokens: error: undefined reference to 'LLVMBuildLoad'
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o:calc.c:function
build_from_tokens: error: undefined reference to 'LLVMBuildRet'
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o:calc.c:function
build_from_tokens: error: undefined reference to 'LLVMBuildBinOp'
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o:calc.c:function
handle_line: error: undefined reference to 'LLVMModuleCreateWithName'
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o:calc.c:function
handle_line: error: undefined reference to 'LLVMInt64Type'
tools/llvm-c-test/CMakeFiles/llvm-c-test.dir/calc.c.o:calc.c:function
handle_line: error: undefined reference to 'LLVMPointerType'
...
I have switched "BUILD_SHARED_LIBS" on. Ubuntu 14.10.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 06:40:40 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 13:40:40 +0000
Subject: [LLVMbugs] [Bug 23145] New: llvm-symbolizer doesn't work on Windows
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23145
Bug ID: 23145
Summary: llvm-symbolizer doesn't work on Windows
Product: compiler-rt
Version: unspecified
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: compiler-rt
Assignee: unassignedbugs at nondot.org
Reporter: timurrrr at google.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Example:
------------
$ cat test.c
void foo() {
}
int main() {
foo();
}
------------
$ cl -nologo -Zi test.c -Fetest.exe
[or clang-cl -Zi test.c -Fetest.exe]
$ dumpbin /HEADERS test.exe | grep "image base"
400000 image base (00400000 to 0042DFFF)
$ dumpbin /DISASM test.exe | grep "_foo:\|_main:" --after-context=1
_foo:
00401020: 55 push ebp
--
_main:
00401030: 55 push ebp
Now,
-------------
$ cat symbols
0x1020
0x1030
-------------
And finally:
----------------------------------------------
$ cat symbols | llvm-symbolizer --obj test.exe
??
??:0:0
??
??:0:0
----------------------------------------------
The final command should instead tell me these are functions 'foo' and 'main'
in file test.cpp on lines 1 and 4 respectively.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 07:01:36 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 14:01:36 +0000
Subject: [LLVMbugs] [Bug 23146] New: Missing 'null passed to a callee that
requires a non-null argument' warning for block expression invocations
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23146
Bug ID: 23146
Summary: Missing 'null passed to a callee that requires a
non-null argument' warning for block expression
invocations
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Frontend
Assignee: unassignedclangbugs at nondot.org
Reporter: thonermann at coverity.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Bug 23117 fixed (in r234297) an assertion failure that occurred when nonnull
attributes appertain to block declarations. Warnings are issued when invoking
a block with a null argument for a block with a corresponding nonnull parameter
when the attribute is explicitly specified for a block pointer type, but not
for block invocations on block expressions that specify the attribute. In the
following example, a warning is emitted for the invocation of bp(0), but not
for the block expression invocation.
$ cat t.c
void(^bp)(int *) __attribute__((nonnull(1)));
void f() {
bp(0); // expected-warning{{null passed to a callee that requires a
non-null argument}}
^(int *p1) __attribute__((nonnull(1))) {}(0); // expected-warning{{null
passed to a callee that requires a non-null argument}}
}
$ clang -fblocks -c t.c
t.c:3:9: warning: null passed to a callee that requires a non-null argument
[-Wnonnull]
bp(0);
~^
1 warning generated.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 07:53:23 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 14:53:23 +0000
Subject: [LLVMbugs] [Bug 23147] New: #include_netxt is not
included in VS?
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23147
Bug ID: 23147
Summary: #include_netxt is not included in VS?
Product: clang
Version: 3.5
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Headers
Assignee: unassignedclangbugs at nondot.org
Reporter: fatwreck at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Hello,
I was trying to compile a simple program which called __rdtsc() on MacOs, and
was failing with the following error:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/include/intrin.h:26:15:
fatal error:
'Intrin.h' file not found
#include_next
^
1 error generated.
I checked the header file and noticed that comment above #include_next does not
match the code:
https://github.com/llvm-mirror/clang/blob/3e1cca7ad0cc730b54c1a2057f9ce36a85eab75a/lib/Headers/Intrin.h#L24-L27
I think it should be #ifdef _MSC_VER, or I am missing something?
Thank you!
Best,
Alex
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 09:10:02 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 16:10:02 +0000
Subject: [LLVMbugs] [Bug 23149] New: VLA extension - explicit typing fails.
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23149
Bug ID: 23149
Summary: VLA extension - explicit typing fails.
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: sasho648 at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
The problem is that I can't assign VLA pointer or reference to a variable with
explicit type. Examples:
void func(std::size_t sz)
{
int arr[sz];
int (*pArr)[sz] = &arr;
int (&refArr)[sz] = arr;
}
It fails to compile with those strange error message:
error: cannot initialize a variable of type 'int (*)[sz]' with an rvalue of
type 'int (*)[sz]'
int (*pArr)[sz] = &arr;
error: non-const lvalue reference to type 'int [sz]' cannot bind to a value of
unrelated type 'int [sz]'
int (&refArr)[sz] = arr;
On the other hand this works fine:
void func(std::size_t sz)
{
int arr[sz];
auto *pArr = &arr;
auto &refArr = arr;
}
While reference to VLA arrays are not part of C99, pointers to them are
well-defined and should be supported if compatibility with this standard is
supported. However I hope reference will be kept too (as they are a cool
add-on).
Those constructs are well supported by GCC compiler too.
Life examples on online-compiler with Clang(3.7.0):
Non-working example:
http://melpon.org/wandbox/permlink/ZIUJrZqmvBmDzfkC
Working example, second one:
http://melpon.org/wandbox/permlink/gSXxvRXQRaCBzdwN
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 09:11:19 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 16:11:19 +0000
Subject: [LLVMbugs] [Bug 23150] New: error in backend: Cannot select:
intrinsic %llvm.eh.actions
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23150
Bug ID: 23150
Summary: error in backend: Cannot select: intrinsic
%llvm.eh.actions
Product: new-bugs
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: dwendt at knights.ucf.edu
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Compiling a large project(CryptoPP) with trunk clang in an MSVS2013 produced
this:
...warnings above...
1>CL : fatal error : error in backend: Cannot select: intrinsic
%llvm.eh.actions
1>clang-cl.exe : error : clang frontend command failed with exit code 70 (use
-v to see invocation)
1> clang version 3.7.0 (trunk)
1> Target: x86_64-pc-windows-msvc
1> Thread model: posix
The same project compiles fine under visual c++. The run script is below as
there is only one attachment. The attachment is the preprocessed source.
# Crash reproducer for clang version 3.7.0 (trunk)
# Original command: "C:\\Program Files (x86)\\LLVM\\msbuild-bin\\CL.exe"
"-cc1" "-triple" "x86_64-pc-windows-msvc" "-emit-obj" "-disable-free"
"-main-file-name" "pch.cpp" "-mrelocation-model" "pic" "-pic-level" "2"
"-mthread-model" "posix" "-relaxed-aliasing" "-fmath-errno" "-masm-verbose"
"-mconstructor-aliases" "-munwind-tables" "-target-cpu" "x86-64" "-D_MT"
"--dependent-lib=libcmt" "--dependent-lib=oldnames" "-fcxx-exceptions"
"-fexceptions" "-fms-volatile" "-fdiagnostics-format" "msvc"
"-momit-leaf-frame-pointer" "-dwarf-column-info" "-ffunction-sections"
"-coverage-file" "D:\\code\\hdistrib\\libs\\pch.cpp" "-resource-dir"
"C:\\Program Files (x86)\\LLVM\\msbuild-bin\\..\\lib\\clang\\3.7.0" "-D"
"NDEBUG" "-D" "WIN32" "-D" "_WINDOWS" "-D" "_MBCS" "-D" "_USRDLL" "-D"
"CRYPTOPP_EXPORTS" "-D" "CRYPTOPP_ENABLE_COMPLIANCE_WITH_FIPS_140_2=1" "-D"
"USE_PRECOMPILED_HEADERS" "-internal-isystem" "C:\\Program Files
(x86)\\LLVM\\msbuild-bin\\..\\lib\\clang\\3.7.0\\include" "-internal-isystem"
"C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\include"
"-internal-isystem" "C:\\Program Files (x86)\\Microsoft Visual Studio
12.0\\VC\\atlmfc\\include" "-internal-isystem" "C:\\Program Files
(x86)\\Windows Kits\\8.1\\Include\\um" "-internal-isystem" "C:\\Program Files
(x86)\\Windows Kits\\8.1\\Include\\shared" "-internal-isystem" "C:\\Program
Files (x86)\\Windows Kits\\8.1\\Include\\winrt" "-Os" "-Wall" "-Wno-error"
"-std=c++11" "-fdeprecated-macro" "-fdebug-compilation-dir"
"D:\\code\\hdistrib\\libs" "-ferror-limit" "19" "-fmessage-length" "0"
"-mstackrealign" "-fms-extensions" "-fms-compatibility"
"-fms-compatibility-version=18.0" "-fno-threadsafe-statics"
"-fdelayed-template-parsing" "-fobjc-runtime=gcc" "-fdiagnostics-show-option"
"-vectorize-loops" "-vectorize-slp" "-o" "x64\\cryptopp\\Release\\pch.obj" "-x"
"c++" "pch.cpp"
"C:\\Program Files (x86)\\LLVM\\msbuild-bin\\CL.exe" "-cc1" "-triple"
"x86_64-pc-windows-msvc" "-emit-obj" "-disable-free" "-main-file-name"
"pch.cpp" "-mrelocation-model" "pic" "-pic-level" "2" "-mthread-model" "posix"
"-relaxed-aliasing" "-fmath-errno" "-masm-verbose" "-mconstructor-aliases"
"-munwind-tables" "-target-cpu" "x86-64" "-D_MT" "--dependent-lib=libcmt"
"--dependent-lib=oldnames" "-fcxx-exceptions" "-fexceptions" "-fms-volatile"
"-fdiagnostics-format" "msvc" "-momit-leaf-frame-pointer" "-dwarf-column-info"
"-ffunction-sections" "-D" "NDEBUG" "-D" "WIN32" "-D" "_WINDOWS" "-D" "_MBCS"
"-D" "_USRDLL" "-D" "CRYPTOPP_EXPORTS" "-D"
"CRYPTOPP_ENABLE_COMPLIANCE_WITH_FIPS_140_2=1" "-D" "USE_PRECOMPILED_HEADERS"
"-Os" "-Wall" "-Wno-error" "-std=c++11" "-fdeprecated-macro" "-ferror-limit"
"19" "-fmessage-length" "0" "-mstackrealign" "-fms-extensions"
"-fms-compatibility" "-fms-compatibility-version=18.0"
"-fno-threadsafe-statics" "-fdelayed-template-parsing" "-fobjc-runtime=gcc"
"-fdiagnostics-show-option" "-vectorize-loops" "-vectorize-slp" "-x" "c++"
"pch-cd5962.cpp"
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 09:22:20 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 16:22:20 +0000
Subject: [LLVMbugs] [Bug 23150] error in backend: Cannot select: intrinsic
%llvm.eh.actions
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23150
Reid Kleckner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |rnk at google.com
Resolution|--- |LATER
--- Comment #2 from Reid Kleckner ---
C++ exceptions are currently under development and not yet supported. You can
disable them in the VS project properties panel. Also consider adding
-D_HAS_EXCEPTIONS=0 so that the STL doesn't use them.
If your project doesn't use exceptions and you can't get things to work, feel
free to open more bugs for those issues.
I ran your test case and I get a different crash here:
While deleting: i8* %call.i62
Use still stuck around after Def is destroyed: %.in = phi i8* [ %call.i62,
%invoke.cont26 ], [ %call.i63, %if.end18 ]
Assertion failed: use_empty() && "Uses remain when a value is destroyed!", file
..\lib\IR\Value.cpp, line 82
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 10:02:48 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 17:02:48 +0000
Subject: [LLVMbugs] [Bug 23151] New: Clang VLA internal failure.
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23151
Bug ID: 23151
Summary: Clang VLA internal failure.
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: release blocker
Priority: P
Component: -New Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: sasho648 at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
This code gives internal failure error no both C & C++ Clang compiler:
#include
#include
void func(size_t sz, int (*arr)[*])
{
printf("%lu", sizeof(*arr) / sizeof(int));
}
int main()
{
size_t sz = 3;
int arr[sz];
func(sz, &arr);
}
Life example:
http://melpon.org/wandbox/permlink/ygeV7ELkk49jRZFS
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 10:32:29 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 17:32:29 +0000
Subject: [LLVMbugs] [Bug 23152] New: Many TsanRtlTest failures
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23152
Bug ID: 23152
Summary: Many TsanRtlTest failures
Product: compiler-rt
Version: unspecified
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: compiler-rt
Assignee: unassignedbugs at nondot.org
Reporter: hjl.tools at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
On Linux/x86-64, llvm r234316 + clang r234320 + compiler-rt r234187
gave me:
Unresolved Tests (17):
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.FuncCall
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop1
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop1Read
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop1Write
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop2
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop2Read
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop2Write
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop4
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop4Read
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop4Write
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop8
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop8Read
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.Mop8Write
ThreadSanitizer-Unit :: rtl/TsanRtlTest/DISABLED_BENCH.MutexLocal
ThreadSanitizer-Unit ::
rtl/TsanRtlTest/DISABLED_BENCH_ThreadSanitizer.Singleton
ThreadSanitizer-Unit ::
rtl/TsanRtlTest/DISABLED_BENCH_ThreadSanitizer.StopFlag
ThreadSanitizer-Unit ::
rtl/TsanRtlTest/DISABLED_SLOW_ThreadSanitizer.ThreadALot
Expected Passes : 23270
Expected Failures : 151
Unsupported Tests : 444
Unresolved Tests : 17
Unexpected Failures: 2
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 11:15:10 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 18:15:10 +0000
Subject: [LLVMbugs] [Bug 23152] Many TsanRtlTest failures
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23152
Reid Kleckner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |rnk at google.com
Resolution|--- |FIXED
--- Comment #1 from Reid Kleckner ---
Should be fixed in r234336.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 12:25:51 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 19:25:51 +0000
Subject: [LLVMbugs] [Bug 23153] New: clang-check warn on suspect strncpy
(etc.)
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23153
Bug ID: 23153
Summary: clang-check warn on suspect strncpy (etc.)
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Static Analyzer
Assignee: kremenek at apple.com
Reporter: bill.torpey at ullink.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
I haven't been able to find an answer to this question, so thought I would ask
it here.
Can clang's static analysis find bugs of this sort:
void func(char* arg)
{
char buf1[10];
char buf2[20];
strncpy(buf1, arg, sizeof(buf2));
}
It doesn't appear to, but I want to make sure I'm not missing something.
TIA!
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 12:47:51 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 19:47:51 +0000
Subject: [LLVMbugs] [Bug 23137] Assertion: SymbolMap.find(&A_SD.getSymbol())
!= SymbolMap.end() && "Symbol must already have been defined in
ExecutePostLayoutBinding!", file lib\MC\WinCOFFObjectWriter.cpp, line 690
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23137
Reid Kleckner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #3 from Reid Kleckner ---
Fixed in r234346.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 15:01:50 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 22:01:50 +0000
Subject: [LLVMbugs] [Bug 23154] New: pthread with ucontext on mac
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23154
Bug ID: 23154
Summary: pthread with ucontext on mac
Product: clang
Version: trunk
Hardware: Macintosh
OS: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: albertnetymk at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
I am using ucontext along with pthread. The below program works OK on Linux,
but has failed assertion on Mac.
The problem seems that thread local variables are not correctly accessed after
resuming the context from another thread.
The program creates two threads, A and B. A sets the context ready before B
could resume the context, for it's synced properly.
It's very appreciated if someone could shed some light on this behavior on mac.
ENV:
```
clang version 3.7.0 (http://llvm.org/git/llvm.git
8d70064a4ac2ae09b8003173e751cfad9dc15400)
Target: x86_64-apple-darwin13.4.0
Thread model: posix
```
Program:
```
#define _XOPEN_SOURCE 800
#include
#include
#include
#include
#include
#include
#include
static int flag = 0;
void swap(ucontext_t *old, ucontext_t *new)
{
int ret = swapcontext(old, new);
assert(ret == 0);
}
#define SSIZE MINSIGSTKSZ
static char stack[SSIZE];
static ucontext_t a_ctx[2];
static ucontext_t b_ctx[2];
volatile static __thread int bug = 0;
static void func(int b) { }
static void f1 (void)
{
assert(bug == 0);
func(bug);
swap(&a_ctx[1], &a_ctx[0]);
assert(bug == 1);
}
void *thread_a(void *arg)
{
printf("A is %lu\n", pthread_self());
bug = 0;
ucontext_t ctx = a_ctx[1];
getcontext(&ctx);
ctx.uc_stack.ss_sp = stack;
ctx.uc_stack.ss_size = sizeof stack;
makecontext(&ctx, f1, 0);
swap(&a_ctx[0], &ctx);
__atomic_store_n(&flag, 1, __ATOMIC_RELAXED);
sleep(1);
return NULL;
}
void *thread_b(void *arg)
{
printf("B is %lu\n", pthread_self());
bug = 1;
while(__atomic_load_n(&flag, __ATOMIC_RELAXED) == 0) ;
swap(&b_ctx[0], &a_ctx[1]);
return NULL;
}
int main(int argc, char **argv)
{
pthread_t a, b;
pthread_create(&b, NULL, &thread_b, NULL);
pthread_create(&a, NULL, &thread_a, NULL);
pthread_exit(NULL);
}
```
I posted it on
[SO](http://stackoverflow.com/questions/29430932/clang-bug-on-pthread-with-ucontext-on-mac)
as well, but no real answers so far.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 15:09:34 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 22:09:34 +0000
Subject: [LLVMbugs] [Bug 23151] Clang VLA internal failure.
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23151
David Majnemer changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Component|-New Bugs |Frontend
Resolution|--- |FIXED
--- Comment #3 from David Majnemer ---
Fixed in r234363.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 16:48:21 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 07 Apr 2015 23:48:21 +0000
Subject: [LLVMbugs] [Bug 23155] New: llvm 16 bit integer code causes lots of
partial register stalls
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23155
Bug ID: 23155
Summary: llvm 16 bit integer code causes lots of partial
register stalls
Product: libraries
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: Backend: X86
Assignee: unassignedbugs at nondot.org
Reporter: kevin.b.smith at intel.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
When generating code for one of the eembc/telecom kernels llvm generates
a lot of 16 bit operations, specifically loads that cause partial register
usage. Due to the false dependency on the upper portion of
the register, these operations are much slower than if they were expanded to be
32 bit operations.
This specifically impacts the code generated for EEMBC/telecom/viterb00.c
routine ACS. Eliminating the partial register stalls increases performance
by about 27% for the data_2 input set. For other input sets the performance
improvement is less, but it is significant for all of those inputs.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 17:54:50 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 08 Apr 2015 00:54:50 +0000
Subject: [LLVMbugs] [Bug 18218] incorrect implementation of isnan and
similar functions
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=18218
Marshall Clow (home) changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |INVALID
--- Comment #7 from Marshall Clow (home) ---
(In reply to comment #0)
> The template should be enabled for every type that is convertible to an
> arithmetic type, to make the implementation indistinguishable from what is
> specified in the standard.
After some research, and talking to a bunch of people, I have come to the
conclusion that this is incorrect.
This is LWG issue #2086 - http://cplusplus.github.io/LWG/lwg-defects.html#2086,
and the discussion there is quite clear:
The only valid types that can be passed to isnan (and others in )
are arithmetic types; i.e, the built-in integral and floating point types. No
user-defined types.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 18:01:31 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 08 Apr 2015 01:01:31 +0000
Subject: [LLVMbugs] [Bug 23035] lld reports "Undefined symbol" for shared
lib's dependencies
In-Reply-To:
References:
Message-ID:
https://llvm.org/bugs/show_bug.cgi?id=23035
Davide Italiano changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #1 from Davide Italiano ---
r234378.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From bugzilla-daemon at llvm.org Tue Apr 7 19:09:55 2015
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 08 Apr 2015 02:09:55 +0000
Subject: [LLVMbugs] [Bug 23156] New: std::is_integral<__int128>::value is
false with libstdc++ from GCC 5.
Message-ID: