From bugzilla-daemon at llvm.org Mon Nov 1 00:35:34 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 00:35:34 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7459] [MC] llvm-mc movsx/movzx not recognized
In-Reply-To:
References:
Message-ID: <20101101053534.E8F042A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7459
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #3 from Chris Lattner 2010-11-01 00:35:34 CDT ---
This is implemented in a long series of patches leading up to r r117901. The
memory forms are not accepted when the size of the memory can't be determined.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 02:22:00 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 02:22:00 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8519] New: Field offset not at char boundary!
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8519
Summary: Field offset not at char boundary!
Product: clang
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: wendling at apple.com
CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com
This is from a self-compilation with clang r117907:
$ /Users/void/llvm/llvm-opt.obj/Release+Asserts/bin/clang -cc1 -triple
x86_64-apple-darwin10.0.0 \
-emit-obj -mrelax-all -disable-free -main-file-name FrontendAction.cpp
-pic-level 1 -mdisable-fp-elim \
-relaxed-aliasing -masm-verbose -munwind-tables -target-cpu core2
-target-linker-version 97.14 -g \
-resource-dir
/Users/void/llvm/llvm-opt.obj/Release+Asserts/bin/../lib/clang/2.9
-dependency-file \
/Users/void/llvm/llvm.obj/tools/clang/lib/Frontend/Debug+Asserts/FrontendAction.d.tmp
-MP -MT \
/Users/void/llvm/llvm.obj/tools/clang/lib/Frontend/Debug+Asserts/FrontendAction.o
-MT \
/Users/void/llvm/llvm.obj/tools/clang/lib/Frontend/Debug+Asserts/FrontendAction.d
-D _DEBUG -D _GNU_SOURCE \
-D __STDC_LIMIT_MACROS -D __STDC_CONSTANT_MACROS -I
/Users/void/llvm/llvm.obj/include \
-I /Users/void/llvm/llvm.obj/tools/clang/lib/Frontend -I
/Users/void/llvm/llvm.src/include \
-I /Users/void/llvm/llvm.src/tools/clang/lib/Frontend \
-I /Users/void/llvm/llvm.src/tools/clang/lib/Frontend/../../include \
-I /Users/void/llvm/llvm.obj/tools/clang/lib/Frontend/../../include
-Woverloaded-virtual -Wcast-qual \
-Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic
-ferror-limit 19 \
-fmessage-length 124 -stack-protector 1 -fblocks -fno-rtti -fno-common
-fdiagnostics-show-option \
-fcolor-diagnostics /Users/void/llvm/FrontendAction.ii -x c++
Assertion failed: (FieldOffset % CharWidth == 0 && "Field offset not at char
boundary!"), function getFieldOffset, file
/Users/void/llvm/llvm-tot.src/tools/clang/lib/AST/RecordLayoutBuilder.cpp, line
98.
0 clang 0x00000001013f1c32 PrintStackTrace(void*) + 34
1 clang 0x00000001013f2a83 SignalHandler(int) + 707
2 libSystem.B.dylib 0x00007fff8439435a _sigtramp + 26
3 libSystem.B.dylib 0x00007fff5fbfae10 _sigtramp + 3683019472
4 clang 0x0000000100017842 __assert_rtn + 66
5 clang 0x00000001007c6fb4 (anonymous
namespace)::EmptySubobjectMap::UpdateEmptyFieldSubobjects(clang::CXXRecordDecl
const*, clang::CXXRecordDecl const*, clang::CharUnits) + 1284
6 clang 0x00000001007c70da (anonymous
namespace)::EmptySubobjectMap::UpdateEmptyFieldSubobjects(clang::FieldDecl
const*, clang::CharUnits) + 106
7 clang 0x00000001007c7eeb (anonymous
namespace)::RecordLayoutBuilder::LayoutField(clang::FieldDecl const*) + 1403
8 clang 0x00000001007c88da (anonymous
namespace)::RecordLayoutBuilder::LayoutFields(clang::RecordDecl const*) + 58
9 clang 0x00000001007c2b62 (anonymous
namespace)::RecordLayoutBuilder::Layout(clang::CXXRecordDecl const*) + 50
10 clang 0x00000001007c3bae
clang::ASTContext::getASTRecordLayout(clang::RecordDecl const*) + 2798
11 clang 0x00000001002622dc
clang::CodeGen::CGRecordLayoutBuilder::Layout(clang::RecordDecl const*) + 28
12 clang 0x0000000100262f77
clang::CodeGen::CodeGenTypes::ComputeRecordLayout(clang::RecordDecl const*) +
263
13 clang 0x00000001002a9f6c
clang::CodeGen::CodeGenTypes::ConvertTagDeclType(clang::TagDecl const*) + 1484
14 clang 0x00000001002a844b
clang::CodeGen::CodeGenTypes::ConvertNewType(clang::QualType) + 1195
15 clang 0x00000001002a9435
clang::CodeGen::CodeGenTypes::ConvertTypeRecursive(clang::QualType) + 437
16 clang 0x00000001002aa8b8
clang::CodeGen::CodeGenTypes::ConvertType(clang::QualType, bool) + 24
17 clang 0x00000001002aaa72
clang::CodeGen::CodeGenTypes::ConvertTypeForMem(clang::QualType, bool) + 34
18 clang 0x00000001002aab22
clang::CodeGen::CodeGenTypes::HandleLateResolvedPointers() + 66
19 clang 0x0000000100192a23
clang::CodeGen::CodeGenTypes::getFunctionInfo(clang::CanQual,
llvm::SmallVectorImpl > const&,
clang::FunctionType::ExtInfo const&, bool) + 1331
20 clang 0x00000001001935e2
clang::CodeGen::CodeGenTypes::getFunctionInfo(clang::CXXConstructorDecl const*,
clang::CXXCtorType) + 562
21 clang 0x000000010018ece0
clang::CodeGen::CodeGenModule::GetAddrOfCXXConstructor(clang::CXXConstructorDecl
const*, clang::CXXCtorType) + 192
22 clang 0x000000010018f358
clang::CodeGen::CodeGenModule::EmitCXXConstructor(clang::CXXConstructorDecl
const*, clang::CXXCtorType) + 136
23 clang 0x00000001002a163a
clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::CodeGen::GlobalDecl)
+ 362
24 clang 0x00000001002a17d6
clang::CodeGen::CodeGenModule::EmitGlobal(clang::CodeGen::GlobalDecl) + 150
25 clang 0x000000010018dfc8
clang::CodeGen::CodeGenModule::EmitCXXConstructors(clang::CXXConstructorDecl
const*) + 40
26 clang 0x00000001002a2489
clang::CodeGen::CodeGenModule::EmitTopLevelDecl(clang::Decl*) + 1017
27 clang 0x00000001002c48cc (anonymous
namespace)::CodeGeneratorImpl::HandleTopLevelDecl(clang::DeclGroupRef) + 60
28 clang 0x000000010028c56b (anonymous
namespace)::BackendConsumer::HandleTopLevelDecl(clang::DeclGroupRef) + 155
29 clang 0x00000001002d0af6 clang::ParseAST(clang::Sema&, bool) +
182
30 clang 0x000000010028cdec clang::CodeGenAction::ExecuteAction() +
60
31 clang 0x000000010004e169
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 393
32 clang 0x00000001000211ce
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 1614
33 clang 0x00000001000191e3 cc1_main(char const**, char const**,
char const*, void*) + 515
34 clang 0x0000000100020154 main + 4884
35 clang 0x0000000100017bb8 start + 52
Stack dump:
0. Program arguments:
/Users/void/llvm/llvm-opt.obj/Release+Asserts/bin/clang -cc1 -triple
x86_64-apple-darwin10.0.0 -emit-obj -mrelax-all -disable-free -main-file-name
FrontendAction.cpp -pic-level 1 -mdisable-fp-elim -relaxed-aliasing
-masm-verbose -munwind-tables -target-cpu core2 -target-linker-version 97.14 -g
-resource-dir
/Users/void/llvm/llvm-opt.obj/Release+Asserts/bin/../lib/clang/2.9
-dependency-file
/Users/void/llvm/llvm.obj/tools/clang/lib/Frontend/Debug+Asserts/FrontendAction.d.tmp
-MP -MT
/Users/void/llvm/llvm.obj/tools/clang/lib/Frontend/Debug+Asserts/FrontendAction.o
-MT
/Users/void/llvm/llvm.obj/tools/clang/lib/Frontend/Debug+Asserts/FrontendAction.d
-D _DEBUG -D _GNU_SOURCE -D __STDC_LIMIT_MACROS -D __STDC_CONSTANT_MACROS -I
/Users/void/llvm/llvm.obj/include -I
/Users/void/llvm/llvm.obj/tools/clang/lib/Frontend -I
/Users/void/llvm/llvm.src/include -I
/Users/void/llvm/llvm.src/tools/clang/lib/Frontend -I
/Users/void/llvm/llvm.src/tools/clang/lib/Frontend/../../include -I
/Users/void/llvm/llvm.obj/tools/clang/lib/Frontend/../../include
-Woverloaded-virtual -Wcast-qual -Wno-long-long -Wall -W -Wno-unused-parameter
-Wwrite-strings -pedantic -ferror-limit 19 -fmessage-length 124
-stack-protector 1 -fblocks -fno-rtti -fno-common -fdiagnostics-show-option
-fcolor-diagnostics /Users/void/llvm/FrontendAction.ii -x c++
1.
/Users/void/llvm/llvm.src/tools/clang/lib/Frontend/FrontendAction.cpp:79:1:
current parser token 'FrontendAction'
2.
/Users/void/llvm/llvm.src/tools/clang/lib/Frontend/FrontendAction.cpp:77:17:
LLVM IR generation of declaration 'clang::FrontendAction::FrontendAction'
3.
/Users/void/llvm/llvm.src/tools/clang/lib/Frontend/FrontendAction.cpp:77:17:
Generating code for declaration 'clang::FrontendAction::FrontendAction'
Illegal instruction
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 03:57:47 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 03:57:47 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8520] New: Win32/Path.inc: "NUL" is not regular
file (clang -o NUL fails)
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8520
Summary: Win32/Path.inc: "NUL" is not regular file (clang -o
NUL fails)
Product: libraries
Version: trunk
Platform: PC
OS/Version: Windows XP
Status: NEW
Severity: normal
Priority: P
Component: System Library
AssignedTo: unassignedbugs at nondot.org
ReportedBy: geek4civic at gmail.com
CC: llvmbugs at cs.uiuc.edu
C:\path\to> clang foo.c -S -o nul
error: unable to rename temporary 'nul-000000' to output file 'nul': 'Can't
move
'nul-000000' to 'nul': Cannot create a file when that file already
exists.
'
1 error generated.
clang: error: unable to remove file:
===
It is due to sys::Path::isRegularFile().
My workaround is below. It seems there is no way to detect
reserved filenames ("nul", "con", &c) with Win32API.
--- a/lib/System/Win32/Path.inc
+++ b/lib/System/Win32/Path.inc
@@ -369,6 +369,9 @@ bool
Path::isRegularFile() const {
if (isDirectory())
return false;
+ if (getBasename().size() == 3
+ && memcmp(getBasename().data(), "nul", 3) == 0)
+ return false;
return true;
}
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 06:28:44 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 06:28:44 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8521] New: NEON instruction VQSHLU producing bad
cast
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8521
Summary: NEON instruction VQSHLU producing bad cast
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: LLVM Codegen
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: rengolin at gmail.com
CC: llvmbugs at cs.uiuc.edu
When lowering vqshlu_n_s8() (file attached), Clang breaks with bad cast.
Command line:
$ clang -ccc-host-triple armv7a-none-eabi -ccc-gcc-name arm-none-eabi-gcc
-mfloat-abi=hard -w -emit-llvm -mcpu=cortex-a8 -S vqshlu_n.c -o -
Error:
clang: Constants.cpp:1174: static llvm::Constant*
llvm::ConstantExpr::getCast(unsigned int, llvm::Constant*, const llvm::Type*):
Assertion `CastInst::castIsValid(opc, C, Ty) && "Invalid constantexpr cast!"'
failed.
(...)
7 clang 0x00000000007c2885 llvm::IRBuilder
>::CreateCast(llvm::Instruction::CastOps, llvm::Value*, llvm::Type const*,
llvm::Twine const&) + 101
8 clang 0x00000000008fd4ae
clang::CodeGen::CodeGenFunction::EmitNeonCall(llvm::Function*,
llvm::SmallVectorImpl&, char const*, bool, unsigned int, bool) +
238
(...)
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 10:15:44 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 10:15:44 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8519] Field offset not at char boundary!
In-Reply-To:
References:
Message-ID: <20101101151544.A96112A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8519
Anders Carlsson changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Anders Carlsson 2010-11-01 10:15:43 CDT ---
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20101101/035963.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 10:21:10 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 10:21:10 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8522] New: Use-after-free in VMCore library
(ConstantUniqueMap::refineAbstractType)
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8522
Summary: Use-after-free in VMCore library
(ConstantUniqueMap::refineAbstractType)
Product: new-bugs
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: Tim.Deegan at citrix.com
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=5713)
--> (http://llvm.org/bugs/attachment.cgi?id=5713)
Possible fix?
When ConstantUniqueMap::refineAbstractType() deletes an InlineAsm constant, it
seems like it can find the same constant again later in its main loop.
I was able to repro this (on trunk and on 2.8) when linking parts of the Xen
hypervisor, which would cause llvm-ld to segfault:
whitby:link$ llvm-ld -r -o test.o domain.o memory.o
0 llvm-ld 0x0000000000c42ff2
1 llvm-ld 0x0000000000c42de5
2 libpthread.so.0 0x00007f9b55b3ef60
3 libpthread.so.0 0x00000000025394d0
Stack dump:
0. Program arguments: llvm-ld -r -o test.o domain.o memory.o
Segmentation fault
I can supply the actual .o files if needed.
The problem seems to be that other constant types make an effort to remove
themselves cleanly from datastructures but InlineAsms just delete themselves.
By cargo-culting other constant types I found the attached patch fixes the
crash but I have no great faith in its correctness. :)
Cheers,
Tim.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 10:47:13 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 10:47:13 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7459] [MC] llvm-mc movsx/movzx not recognized
In-Reply-To:
References:
Message-ID: <20101101154713.50F4E2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7459
Daniel Dunbar changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 11:05:55 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 11:05:55 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8523] New: build failure on Debian Testing,
not seen on CentOS 5
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8523
Summary: build failure on Debian Testing, not seen on CentOS 5
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: herrold at owlriver.com
CC: llvmbugs at cs.uiuc.edu
herrold at debian4:~/temp$ ./mk-clang.sh clang-20101101.tar.gz
20101101
tail: cannot open `clang-20101101/debian/changelog' for reading: No such file
or directory
dpkg-source: failure: tail of clang-20101101/debian/changelog gave error exit
status 1
Makefile:44: Makefile.config: No such file or directory
Makefile:130: /Makefile.rules: No such file or directory
make: *** No rule to make target `/Makefile.rules'. Stop.
Maintainer name : herrold
Email-Address : info at owlriver.com
Date : Mon, 01 Nov 2010 10:14:05 -0400
Package Name : clang-0.0.20101101-1
Version : 20101101
License : gpl
Using dpatch : no
Type of Package : Multi-Binary
Hit to confirm: Done. Please edit the files in the debian/ subdirectory
now. clang-0.0.20101101-1
uses a configure script, so you probably don't have to edit the Makefiles.
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:
In function `global constructors keyed to Hello.cpp':
Hello.cpp:(.text+0x8b): undefined reference to
`llvm::PassRegistry::getPassRegistry()'
Hello.cpp:(.text+0x9f): undefined reference to
`llvm::PassRegistry::registerPass(llvm::PassInfo const&, bool)'
Hello.cpp:(.text+0x129): undefined reference to
`llvm::PassRegistry::getPassRegistry()'
Hello.cpp:(.text+0x13d): undefined reference to
`llvm::PassRegistry::registerPass(llvm::PassInfo const&, bool)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:
In function `(anonymous namespace)::Hello::~Hello()':
Hello.cpp:(.text+0x1dc): undefined reference to `vtable for llvm::FunctionPass'
Hello.cpp:(.text+0x1e9): undefined reference to `llvm::Pass::~Pass()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:
In function `(anonymous namespace)::Hello::~Hello()':
Hello.cpp:(.text+0x225): undefined reference to `vtable for llvm::FunctionPass'
Hello.cpp:(.text+0x232): undefined reference to `llvm::Pass::~Pass()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:
In function `(anonymous namespace)::Hello2::~Hello2()':
Hello.cpp:(.text+0x25c): undefined reference to `vtable for llvm::FunctionPass'
Hello.cpp:(.text+0x269): undefined reference to `llvm::Pass::~Pass()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:
In function `(anonymous namespace)::Hello2::~Hello2()':
Hello.cpp:(.text+0x2a5): undefined reference to `vtable for llvm::FunctionPass'
Hello.cpp:(.text+0x2b2): undefined reference to `llvm::Pass::~Pass()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:
In function `llvm::Pass* llvm::callDefaultCtor<(anonymous
namespace)::Hello>()':
Hello.cpp:(.text+0x2fa): undefined reference to
`llvm::Pass::Pass(llvm::PassKind, char&)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:
In function `llvm::Pass* llvm::callDefaultCtor<(anonymous
namespace)::Hello2>()':
Hello.cpp:(.text+0x35a): undefined reference to
`llvm::Pass::Pass(llvm::PassKind, char&)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:
In function `(anonymous namespace)::Hello2::runOnFunction(llvm::Function&)':
Hello.cpp:(.text+0x39b): undefined reference to
`llvm::sys::AtomicIncrement(unsigned int volatile*)'
Hello.cpp:(.text+0x3a7): undefined reference to `llvm::sys::MemoryFence()'
Hello.cpp:(.text+0x3b8): undefined reference to
`llvm::Statistic::RegisterStatistic()'
Hello.cpp:(.text+0x3bd): undefined reference to `llvm::errs()'
Hello.cpp:(.text+0x3f2): undefined reference to `llvm::Value::getName() const'
Hello.cpp:(.text+0x402): undefined reference to `llvm::errs()'
Hello.cpp:(.text+0x412): undefined reference to
`llvm::raw_ostream::write_escaped(llvm::StringRef)'
Hello.cpp:(.text+0x44e): undefined reference to `llvm::raw_ostream::write(char
const*, unsigned int)'
Hello.cpp:(.text+0x464): undefined reference to
`llvm::raw_ostream::write(unsigned char)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:
In function `(anonymous namespace)::Hello::runOnFunction(llvm::Function&)':
Hello.cpp:(.text+0x49b): undefined reference to
`llvm::sys::AtomicIncrement(unsigned int volatile*)'
Hello.cpp:(.text+0x4a7): undefined reference to `llvm::sys::MemoryFence()'
Hello.cpp:(.text+0x4b8): undefined reference to
`llvm::Statistic::RegisterStatistic()'
Hello.cpp:(.text+0x4bd): undefined reference to `llvm::errs()'
Hello.cpp:(.text+0x4f2): undefined reference to `llvm::Value::getName() const'
Hello.cpp:(.text+0x502): undefined reference to `llvm::errs()'
Hello.cpp:(.text+0x512): undefined reference to
`llvm::raw_ostream::write_escaped(llvm::StringRef)'
Hello.cpp:(.text+0x54e): undefined reference to `llvm::raw_ostream::write(char
const*, unsigned int)'
Hello.cpp:(.text+0x564): undefined reference to
`llvm::raw_ostream::write(unsigned char)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x10):
undefined reference to `llvm::Pass::getPassName() const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x18):
undefined reference to `llvm::Pass::print(llvm::raw_ostream&, llvm::Module
const*) const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x1c):
undefined reference to
`llvm::FunctionPass::createPrinterPass(llvm::raw_ostream&,
std::basic_string, std::allocator > const&)
const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x20):
undefined reference to `llvm::FunctionPass::assignPassManager(llvm::PMStack&,
llvm::PassManagerType)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x24):
undefined reference to `llvm::Pass::preparePassManager(llvm::PMStack&)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x28):
undefined reference to `llvm::FunctionPass::getPotentialPassManagerType()
const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x2c):
undefined reference to `llvm::Pass::getAnalysisUsage(llvm::AnalysisUsage&)
const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x30):
undefined reference to `llvm::Pass::releaseMemory()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x34):
undefined reference to `llvm::Pass::getAdjustedAnalysisPointer(void const*)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x38):
undefined reference to `llvm::Pass::getAsImmutablePass()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x3c):
undefined reference to `llvm::Pass::getAsPMDataManager()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x40):
undefined reference to `llvm::Pass::verifyAnalysis() const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x44):
undefined reference to `llvm::Pass::dumpPassStructure(unsigned int)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x48):
undefined reference to `llvm::FunctionPass::doInitialization(llvm::Module&)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x50):
undefined reference to `llvm::FunctionPass::doFinalization(llvm::Module&)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x70):
undefined reference to `llvm::Pass::getPassName() const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x78):
undefined reference to `llvm::Pass::print(llvm::raw_ostream&, llvm::Module
const*) const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x7c):
undefined reference to
`llvm::FunctionPass::createPrinterPass(llvm::raw_ostream&,
std::basic_string, std::allocator > const&)
const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x80):
undefined reference to `llvm::FunctionPass::assignPassManager(llvm::PMStack&,
llvm::PassManagerType)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x84):
undefined reference to `llvm::Pass::preparePassManager(llvm::PMStack&)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x88):
undefined reference to `llvm::FunctionPass::getPotentialPassManagerType()
const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x90):
undefined reference to `llvm::Pass::releaseMemory()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x94):
undefined reference to `llvm::Pass::getAdjustedAnalysisPointer(void const*)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x98):
undefined reference to `llvm::Pass::getAsImmutablePass()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0x9c):
undefined reference to `llvm::Pass::getAsPMDataManager()'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0xa0):
undefined reference to `llvm::Pass::verifyAnalysis() const'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0xa4):
undefined reference to `llvm::Pass::dumpPassStructure(unsigned int)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0xa8):
undefined reference to `llvm::FunctionPass::doInitialization(llvm::Module&)'
/home/herrold/temp/clang-20101101/lib/Transforms/Hello/Release+Asserts/Hello.o:(.data.rel.ro+0xb0):
undefined reference to `llvm::FunctionPass::doFinalization(llvm::Module&)'
collect2: ld returned 1 exit status
make[4]: ***
[/home/herrold/temp/clang-20101101/Release+Asserts/lib/LLVMHello.so] Error 1
make[3]: *** [Hello/.makeinstall] Error 2
make[2]: *** [Transforms/.makeinstall] Error 2
make[1]: *** [install] Error 1
make: *** [install-arch] Error 2
make[1]: *** No rule to make target `distclean'. Stop.
make: *** [clean] Error 2
herrold at debian4:~/temp$ gcc -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.3.2-1.1'
--with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared
--with-system-zlib --libexecdir=/usr/lib --without-included-gettext
--enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3
--program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug
--enable-objc-gc --enable-mpfr --enable-targets=all --enable-cld
--enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu
--target=i486-linux-gnu
Thread model: posix
gcc version 4.3.2 (Debian 4.3.2-1.1)
herrold at debian4:~/temp$ uname -a
Linux debian4.first.lan 2.6.26-2-686 #1 SMP Mon Aug 30 07:01:57 UTC 2010 i686
GNU/Linux
herrold at debian4:~/temp$
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 12:56:30 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 12:56:30 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7459] [MC] llvm-mc movsx/movzx not recognized
In-Reply-To:
References:
Message-ID: <20101101175630.ADBAC2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7459
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|REOPENED |RESOLVED
Resolution| |FIXED
--- Comment #5 from Chris Lattner 2010-11-01 12:56:30 CDT ---
We correctly reject that. GAS has a bug when processing instructions like
"movsx (mem), %rax". The instruction doesn't specify a size (it could
reasonably be 8 bits, 16 bits, or 32-bits) so gas just picks a random one. It
is better for llvm to reject it and force projects to make their assumptions
explicit.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 13:20:59 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 13:20:59 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7916] clang c++ crash in name lookup with unusual
inheritance structure
In-Reply-To:
References:
Message-ID: <20101101182059.8CB442A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7916
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Douglas Gregor 2010-11-01 13:20:59 CDT ---
I recently fixed a very similar bug in this area; it was likely a duplicate of
this bug, which I missed. Closing...
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 15:00:06 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 15:00:06 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8524] New: [inline asm] spandsp compilation failure
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8524
Summary: [inline asm] spandsp compilation failure
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: LLVM Codegen
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: ojab at ojab.ru
CC: llvmbugs at cs.uiuc.edu
clang version 2.9 (trunk 117924)
Target: x86_64-unknown-linux-gnu
Thread model: posix
gsm0610_rpe.c:78:9: error: invalid operand for instruction
" emms;\n"
^
:8:2: note: instantiated into assembly here
movq %rax,%mm5;
^
1 error generated.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 15:21:28 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 15:21:28 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8525] New: False positive due to analyzer
suggesting impossible flow
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8525
Summary: False positive due to analyzer suggesting impossible
flow
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: Static Analyzer
AssignedTo: kremenek at apple.com
ReportedBy: alexei.svitkine at gmail.com
CC: llvmbugs at cs.uiuc.edu
Consider the following simple example:
int foo(char *start)
{
int result;
char *end = start + 1;
char *index = start;
if (start == (char*)-1)
return -1;
while (index < end) {
result = 0;
break;
}
return result;
}
Clang analyzer warns:
mytest.c:16:2: warning: Undefined or garbage value returned to caller
return result;
^ ~~~~~~
This is a false positive. Clang considers the case where the loop body is never
entered.
In this case, this cannot happen. There are two possibilities, either "end ==
start + 1", or "start + 1" resulted in an overflow and end == 0.
The overflow case is detected by:
if (start == (char*)-1)
return -1;
So if we don't hit that, we will always execute the loop body.
The problem also happens if the overflow check is modified to be:
if (end == 0)
return -1;
Now, let's consider for a moment the hypothetical case where analyzer is fixed
to detect the overflow check above and do the right thing (not warn because of
it).
I want to argue that even without the overflow check in place, clang should
still do something different here.
Either it should not warn at all (because something like start + 1 is unlikely
to overflow and cause this code to misbehave), or it should say "assuming
integer overflow" as one of the steps leading up to the analysis warning.
This should also be the case if the value being added is any unsigned integer
(coming from a variable), and not just a literal 1 as is the case in my
example.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 18:46:53 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 18:46:53 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7287] Analyzer/C++ Crash: "Name is not a simple
identifier" for implicit operator= with array elements
In-Reply-To:
References:
Message-ID: <20101101234653.DDC3E2A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7287
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |dgregor at apple.com
Resolution| |FIXED
--- Comment #2 from Douglas Gregor 2010-11-01 18:46:53 CDT ---
Fixed in Clang r117970 by Jim Goodnow II!
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 19:08:10 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 19:08:10 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8462] Argument deduction failure in function
templates
In-Reply-To:
References:
Message-ID: <20101102000810.EBC512A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8462
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #3 from Douglas Gregor 2010-11-01 19:08:10 CDT ---
Committed in Clang r117983, thanks!
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 1 21:36:10 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 1 Nov 2010 21:36:10 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7897] clang c++ crash in asm with temporary with
non-trivial destructor
In-Reply-To:
References:
Message-ID: <20101102023610.ADD942A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7897
Argyrios Kyrtzidis changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |akyrtzi at gmail.com
Resolution| |FIXED
--- Comment #1 from Argyrios Kyrtzidis 2010-11-01 21:36:10 CDT ---
Fixed at r118001.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 02:09:06 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 02:09:06 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8526] New: anonymous namespace prevents codegen
outside namespace
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8526
Summary: anonymous namespace prevents codegen outside namespace
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: skabet at gmail.com
CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com
$ clang++ --version
clang version 2.9 (trunk 118011)
Target: x86_64-unknown-linux-gnu
Thread model: posix
$ clang++ -c bug.cpp -o out.o && nm out.o
$
(empty output)
$ cat bug.cpp
namespace { // removing namespace makes it work
class Inner {
};
}
template
class _Outer{
public:
_Outer() {}
};
typedef _Outer Outer;
class Foo {
public:
Outer bar() const;
};
Outer Foo::bar() const { // not emited. "nm out.o" is empty
return Outer();
}
============
As seen, Foo::bar is not emited. Removing the anonymous namespace makes it
work. Changing the return type (Outer) to something not related the the
anonymous namespace also makes it work.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 03:04:06 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 03:04:06 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8527] New: Win32/Process.inc: "NUL" is not display
device(opt -o nul fails)
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8527
Summary: Win32/Process.inc: "NUL" is not display device(opt -o
nul fails)
Product: libraries
Version: trunk
Platform: PC
OS/Version: Windows XP
Status: NEW
Severity: normal
Priority: P
Component: System Library
AssignedTo: unassignedbugs at nondot.org
ReportedBy: geek4civic at gmail.com
CC: llvmbugs at cs.uiuc.edu
$ Release+Asserts/bin/opt.exe a.ll -o nul
WARNING: You're attempting to print out a bitcode file.
This is inadvisable as it may cause display problems. If
you REALLY want to taste LLVM bitcode first-hand, you
can force output with the `-f' option.
===
Also NUL is character device. GetFileType(h) cannot distinguish whether h is
console handle or not.
Proposal patch;
--- a/lib/System/Win32/Process.inc
+++ b/lib/System/Win32/Process.inc
@@ -132,7 +132,8 @@ bool Process::StandardErrIsDisplayed() {
}
bool Process::FileDescriptorIsDisplayed(int fd) {
- return GetFileType((HANDLE)_get_osfhandle(fd)) == FILE_TYPE_CHAR;
+ DWORD Mode; // Unused
+ return (GetConsoleMode((HANDLE)_get_osfhandle(fd), &Mode) != 0);
}
unsigned Process::StandardOutColumns() {
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 06:19:26 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 06:19:26 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8528] New: [REGRESSION]dct64_sse.c from MPlayer is
miscompiled
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8528
Summary: [REGRESSION]dct64_sse.c from MPlayer is miscompiled
Product: clang
Version: trunk
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: ismail at namtrac.org
CC: llvmbugs at cs.uiuc.edu
Hi;
Looks like dct64_sse.c from MPlayer is miscompilled, resulting in garbage audio
with mp3 streams.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 06:29:46 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 06:29:46 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8529] New: Suboptimal diagnostic produced when ADL
would find a constructor
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8529
Summary: Suboptimal diagnostic produced when ADL would find a
constructor
Product: clang
Version: 2.8
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: richard-llvm at metafoo.co.uk
CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com
Older versions of g++ erroneously allow argument-dependent lookup to find
constructors. If code which relies on this is run through clang, the error
message does not make it obvious why the code is rejected. For instance:
namespace N {
enum E { e };
struct C {
C(E = e) {}
};
}
int main() {
(void)C(N::e);
}
Modern version of g++ (4.2 and later) produce this error:
adl.cpp: In function ?int main()?:
adl.cpp:3: error: argument dependent lookup finds ?struct N::C?
adl.cpp:9: error: in call to ?C?
clang produces this error:
adl.cpp:9:9: error: use of undeclared identifier 'C'
(void)C(N::e);
^
1 error generated.
It'd be nice if clang could go the extra mile and say something like:
adl.cpp:9:9: error: constructors cannot be called via argument-dependent lookup
(void)C(N::e);
^
N::
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 07:11:10 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 07:11:10 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8530] New: Clang rejects enum comparison operators
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8530
Summary: Clang rejects enum comparison operators
Product: clang
Version: 2.8
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: mikazkow at tlen.pl
CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com
This is similar to #7319, but there it was a templated operator.
Source:
enum A{X,Y};
bool operator<(A,A);
int main() {
return X:4:10: error: use of overloaded operator '<' is ambiguous
return X:2:6: note: candidate function
bool operator<(A,A);
^
:4:10: note: built-in candidate operator<(enum A, enum A)
return X:4:10: note: built-in candidate operator<(int, int)
:4:10: note: built-in candidate operator<(double, int)
:4:10: note: built-in candidate operator<(unsigned int, int)
:4:10: note: built-in candidate operator<(unsigned long, int)
:4:10: note: built-in candidate operator<(long double, int)
:4:10: note: built-in candidate operator<(long long, int)
:4:10: note: built-in candidate operator<(float, int)
:4:10: note: built-in candidate operator<(unsigned long long, int)
:4:10: note: built-in candidate operator<(long, int)
:4:10: note: built-in candidate operator<(int, long)
:4:10: note: built-in candidate operator<(int, long long)
:4:10: note: built-in candidate operator<(int, unsigned int)
:4:10: note: built-in candidate operator<(int, unsigned long)
:4:10: note: built-in candidate operator<(int, unsigned long long)
:4:10: note: built-in candidate operator<(int, float)
:4:10: note: built-in candidate operator<(int, double)
:4:10: note: built-in candidate operator<(int, long double)
:4:10: note: built-in candidate operator<(unsigned long long, double)
:4:10: note: built-in candidate operator<(unsigned long long, long
double)
:4:10: note: built-in candidate operator<(unsigned long long, float)
:4:10: note: built-in candidate operator<(unsigned long long, unsigned
long long)
:4:10: note: built-in candidate operator<(unsigned long long, unsigned
long)
:4:10: note: built-in candidate operator<(float, long)
:4:10: note: built-in candidate operator<(float, long long)
:4:10: note: built-in candidate operator<(float, unsigned int)
:4:10: note: built-in candidate operator<(float, unsigned long)
:4:10: note: built-in candidate operator<(float, unsigned long long)
:4:10: note: built-in candidate operator<(float, float)
:4:10: note: built-in candidate operator<(unsigned long long, unsigned
int)
:4:10: note: built-in candidate operator<(float, double)
:4:10: note: built-in candidate operator<(long double, long double)
:4:10: note: built-in candidate operator<(long double, double)
:4:10: note: built-in candidate operator<(long double, float)
:4:10: note: built-in candidate operator<(long double, unsigned long
long)
:4:10: note: built-in candidate operator<(long double, unsigned long)
:4:10: note: built-in candidate operator<(long double, unsigned int)
:4:10: note: built-in candidate operator<(long double, long long)
:4:10: note: built-in candidate operator<(long double, long)
:4:10: note: built-in candidate operator<(double, long double)
:4:10: note: built-in candidate operator<(double, double)
:4:10: note: built-in candidate operator<(double, float)
:4:10: note: built-in candidate operator<(double, unsigned long long)
:4:10: note: built-in candidate operator<(double, unsigned long)
:4:10: note: built-in candidate operator<(double, unsigned int)
:4:10: note: built-in candidate operator<(double, long long)
:4:10: note: built-in candidate operator<(double, long)
:4:10: note: built-in candidate operator<(float, long double)
:4:10: note: built-in candidate operator<(unsigned int, long)
:4:10: note: built-in candidate operator<(long long, long double)
:4:10: note: built-in candidate operator<(long long, double)
:4:10: note: built-in candidate operator<(long long, float)
:4:10: note: built-in candidate operator<(long long, unsigned long long)
:4:10: note: built-in candidate operator<(long long, unsigned long)
:4:10: note: built-in candidate operator<(long long, unsigned int)
:4:10: note: built-in candidate operator<(long long, long long)
:4:10: note: built-in candidate operator<(long long, long)
:4:10: note: built-in candidate operator<(long, long double)
:4:10: note: built-in candidate operator<(long, double)
:4:10: note: built-in candidate operator<(long, float)
:4:10: note: built-in candidate operator<(long, unsigned long long)
:4:10: note: built-in candidate operator<(long, unsigned long)
:4:10: note: built-in candidate operator<(long, unsigned int)
:4:10: note: built-in candidate operator<(long, long long)
:4:10: note: built-in candidate operator<(long, long)
:4:10: note: built-in candidate operator<(unsigned long long, long long)
:4:10: note: built-in candidate operator<(unsigned long long, long)
:4:10: note: built-in candidate operator<(unsigned long, long double)
:4:10: note: built-in candidate operator<(unsigned long, double)
:4:10: note: built-in candidate operator<(unsigned long, float)
:4:10: note: built-in candidate operator<(unsigned long, unsigned long
long)
:4:10: note: built-in candidate operator<(unsigned long, unsigned long)
:4:10: note: built-in candidate operator<(unsigned long, unsigned int)
:4:10: note: built-in candidate operator<(unsigned long, long long)
:4:10: note: built-in candidate operator<(unsigned long, long)
:4:10: note: built-in candidate operator<(unsigned int, long double)
:4:10: note: built-in candidate operator<(unsigned int, double)
:4:10: note: built-in candidate operator<(unsigned int, float)
:4:10: note: built-in candidate operator<(unsigned int, unsigned long
long)
:4:10: note: built-in candidate operator<(unsigned int, unsigned long)
:4:10: note: built-in candidate operator<(unsigned int, unsigned int)
:4:10: note: built-in candidate operator<(unsigned int, long long)
1 error generated.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 07:31:14 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 07:31:14 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8531] New: clang cannot color diagnostics when
output is not going to a terminal
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8531
Summary: clang cannot color diagnostics when output is not
going to a terminal
Product: clang
Version: 2.8
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: Driver
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: richard-llvm at metafoo.co.uk
CC: llvmbugs at cs.uiuc.edu
clang's compiler driver (lib/Driver/Tools.cpp:1478 or so) refuses to pass
-fcolor-diagnostics on to cc1 if stderr is not a tty. This means you can't get
colored diagnostics out of clang if you're running it through distcc or another
compilation distribution system which doesn't allocate a pty.
It would seem more reasonable to say:
* if -fno-color-diagnostics is given to the driver, never color diagnostics
* if -fcolor-diagnostics is given to the driver, always color diagnostics
* if neither is given, color diagnostics iff stderr is a tty which supports
colors.
Indeed, the comment seems to suggest that this was the intention.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 07:33:26 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 07:33:26 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8531] clang cannot color diagnostics when output is
not going to a terminal
In-Reply-To:
References:
Message-ID: <20101102123326.0DCBA2A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8531
Richard Smith changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |WORKSFORME
--- Comment #1 from Richard Smith 2010-11-02 07:33:25 CDT ---
Pulled up the latest svn to try to fix this and found it's already fixed in
TOT!
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 10:30:28 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 10:30:28 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8526] anonymous namespace prevents codegen outside
namespace
In-Reply-To:
References:
Message-ID: <20101102153028.234FD2A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8526
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |WORKSFORME
--- Comment #2 from Douglas Gregor 2010-11-02 10:30:27 CDT ---
Clang is doing the right thing here. The code is well-formed, as far as I can
tell. However, Clang is not emitting Foo::bar() because it has internal linkage
and is never used. If you add an external function that calls it, e.g.,
void blah() {
Foo f;
f.bar();
}
then Clang will generate code for Foo::bar().
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 10:51:33 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 10:51:33 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7190] clang crashes trying to instantiate an
invalid friend decl
In-Reply-To:
References:
Message-ID: <20101102155133.1466C2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7190
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #5 from Douglas Gregor 2010-11-02 10:51:31 CDT ---
The diagnostics are correct. Closing.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 10:59:21 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 10:59:21 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7325] Clang too permissive with use of member
function lacking a call
In-Reply-To:
References:
Message-ID: <20101102155921.E6E0E2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7325
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Douglas Gregor 2010-11-02 10:59:21 CDT ---
Argiris fixed this recently, IIRC. As of Clang r118001 we get:
t.cpp:6:9: error: a bound member function may only be used to call it
if (xp->foo) { }
^~~~~~~
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 11:00:56 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 11:00:56 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7364] #pragma pack(1) needs to be supported
In-Reply-To:
References:
Message-ID: <20101102160056.2F2C52A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7364
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |WORKSFORME
--- Comment #4 from Douglas Gregor 2010-11-02 11:00:55 CDT ---
Closing, since #pragma pack has been working for a very long time and there is
no specific test case here.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 11:02:31 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 11:02:31 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8517] return type not recognized in out of line
definition
In-Reply-To:
References:
Message-ID: <20101102160231.B798B2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8517
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |DUPLICATE
--- Comment #2 from Douglas Gregor 2010-11-02 11:02:31 CDT ---
Ah, this is another instance of
http://llvm.org/bugs/show_bug.cgi?id=7419
*** This bug has been marked as a duplicate of bug 7419 ***
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 11:20:54 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 11:20:54 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7898] clang c++ crash with invalid reference to
member function
In-Reply-To:
References:
Message-ID: <20101102162054.671D52A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7898
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #1 from Douglas Gregor 2010-11-02 11:20:53 CDT ---
We no longer crash. I think Argiris fixed this recently:
t.cpp:8:12: error: cannot initialize a variable of type 'int (A::*)(int)' with
an lvalue of type ''
int (A::*ptr4) (int) = ns;
^ ~~
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 11:21:48 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 11:21:48 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7901] clang c++ crash with template instantiated
with locally-declared extern variable
In-Reply-To:
References:
Message-ID: <20101102162148.E11172A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7901
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #1 from Douglas Gregor 2010-11-02 11:21:48 CDT ---
Already fixed in Clang.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 11:25:08 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 11:25:08 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7903] clang c++ infinite loop with recursive
instantiation of virtual method
In-Reply-To:
References:
Message-ID: <20101102162508.47BEF2A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7903
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |DUPLICATE
--- Comment #1 from Douglas Gregor 2010-11-02 11:25:07 CDT ---
*** This bug has been marked as a duplicate of bug 8272 ***
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 11:29:45 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 11:29:45 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7947] crash in DiagnoseEmptyLookup
In-Reply-To:
References:
Message-ID: <20101102162945.D51F52A6C12F@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7947
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |WORKSFORME
--- Comment #2 from Douglas Gregor 2010-11-02 11:29:45 CDT ---
Looks like this is already fixed.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 11:38:05 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 11:38:05 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7989] access control misapplied to member templates
In-Reply-To:
References:
Message-ID: <20101102163805.B82982A6C12F@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7989
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #1 from Douglas Gregor 2010-11-02 11:38:05 CDT ---
Clang now accepts this.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 11:54:23 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 11:54:23 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8048] clang++ incorrectly deduces template argument
to local type
In-Reply-To:
References:
Message-ID: <20101102165423.5F9F02A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8048
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #1 from Douglas Gregor 2010-11-02 11:54:23 CDT ---
We've decided to have Clang follow the C++0x semantics here, allowing local
types as template arguments. Recently, we added appropriate warnings here:
t.cpp:2:24: warning: template argument uses local type '' [-Wlocal-type-template-args]
void g() { enum { E }; f(E); }
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 11:56:38 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 11:56:38 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7666] Variable size array function parameters cause
clang to segfault
In-Reply-To:
References:
Message-ID: <20101102165638.039FB2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7666
Fariborz Jahanian changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |fjahanian at apple.com
Resolution| |FIXED
--- Comment #1 from Fariborz Jahanian 2010-11-02 11:56:37 CDT ---
Fixed in TOT: http://llvm.org/viewvc/llvm-project?view=rev&revision=118019
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 12:52:11 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 12:52:11 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8519] Field offset not at char boundary!
In-Reply-To:
References:
Message-ID: <20101102175211.942412A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8519
Rafael ?vila de Esp?ndola changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
CC| |rafael.espindola at gmail.com
Resolution|FIXED |
--- Comment #3 from Rafael ?vila de Esp?ndola 2010-11-02 12:52:10 CDT ---
-------------------------------------------
class Value {
unsigned char HasValueHandle : 1;
unsigned char SubclassOptionalData : 7;
};
class map {
};
struct PSVGlobalsTy {
const Value PSVs[4];
map FSValues;
};
static PSVGlobalsTy PSVGlobals;
----------------------------------------------
/usr/local/google/home/espindola/llvm/build/Release+Asserts/bin/clang -cc1
-triple x86_64-unknown-linux-gnu -emit-llvm -o foo.s PseudoSourceValue.ii
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 13:01:23 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 13:01:23 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8522] Use-after-free in VMCore library
(ConstantUniqueMap::refineAbstractType)
In-Reply-To:
References:
Message-ID: <20101102180123.53C882A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8522
Dale Johannesen changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #5 from Dale Johannesen 2010-11-02 13:01:22 CDT ---
I confirmed this patch fixes the problem and doesn't break anything obvious, so
checked in as 118030. Thanks.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 13:28:24 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 13:28:24 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8519] Field offset not at char boundary!
In-Reply-To:
References:
Message-ID: <20101102182824.54BB22A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8519
Rafael ?vila de Esp?ndola changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|REOPENED |RESOLVED
Resolution| |FIXED
--- Comment #4 from Rafael ?vila de Esp?ndola 2010-11-02 13:28:23 CDT ---
It was fixed. I accidentally tried an old version of clang.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 15:02:55 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 15:02:55 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8532] New: "clang can't do complex arithmetic"
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8532
Summary: "clang can't do complex arithmetic"
Product: clang
Version: trunk
Platform: PC
OS/Version: FreeBSD
Status: NEW
Severity: normal
Priority: P
Component: LLVM Codegen
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: ed at 80386.nl
CC: llvmbugs at cs.uiuc.edu
This is a bug report based on an observation from one of our Clang users at
FreeBSD, Steve Kargl. Complete discussion thread can be found here:
http://lists.freebsd.org/pipermail/freebsd-toolchain/2010-November/000001.html
It seems that clang can't do complex arithmetic.
Not to worry gcc in base can't do it either.
/*
* The C99 standard intends x+I*y to be used for this, but x+I*y is
* currently unusable because gcc introduces many overflow,
* underflow, sign and efficiency bugs by rewriting I*y as
* (0.0+I)*(y+0.0*I) and laboriously computing the full complex product.
* In particular, I*Inf is corrupted to NaN+I*Inf, and I*-0 is corrupted
* to -0.0+I*0.0.
*/
#include
#include
#include
int main(void) {
double complex z;
double x, y;
x = 0.;
y = 1. / x;
x = copysign(x, -1.);
/* z = 0 + i (-0) */
z = I * x;
printf("z = 0 + i (-0) = %e + i (%e)\n", creal(z), cimag(z));
/* z = 0 + i Inf */
z = I * y;
printf("z = 0 + i Inf = %e + i %e\n", creal(z), cimag(z));
}
troutmask:sgk[204] clang -o z z.c -lm && ./z
z = 0 + i (-0) = -0.000000e+00 + i (0.000000e+00)
z = 0 + i Inf = nan + i inf
If I read Annex G in n1256.pdf correctly, the z = I*inf = NaN + I inf
is going to really bad things because the NaN is going to propagate
if z is used in further computations. Annex G says z is an infinity.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 16:00:22 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 16:00:22 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8533] New: Typo on home page: "as a optimizer"
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8533
Summary: Typo on home page: "as a optimizer"
Product: Website
Version: unspecified
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: General Website
AssignedTo: unassignedbugs at nondot.org
ReportedBy: Trevor.W.Harmon at nasa.gov
CC: llvmbugs at cs.uiuc.edu
On http://llvm.org/, "as a optimizer" should be "as an optimizer".
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 16:10:50 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 16:10:50 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7851] clang++ can't compile CryptoPP 5.6.0
In-Reply-To:
References:
Message-ID: <20101102211050.4CA152A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7851
Fariborz Jahanian changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |fjahanian at apple.com
Resolution| |FIXED
--- Comment #6 from Fariborz Jahanian 2010-11-02 16:10:49 CDT ---
Fixed in TOT: http://llvm.org/viewvc/llvm-project?view=rev&revision=118066
Attached test case now moves forward and issues numerous errors.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 16:28:36 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 16:28:36 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8533] Typo on home page: "as a optimizer"
In-Reply-To:
References:
Message-ID: <20101102212836.E66892A6C12C@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8533
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #1 from Chris Lattner 2010-11-02 16:28:36 CDT ---
Fixed in r118071, thanks.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 16:35:38 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 16:35:38 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7851] clang++ can't compile CryptoPP 5.6.0
In-Reply-To:
References:
Message-ID: <20101102213538.9078E2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7851
Fariborz Jahanian changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |
--- Comment #7 from Fariborz Jahanian 2010-11-02 16:35:37 CDT ---
Since report is about compiling this file and clang does not. We should keep
the report open
until other issues are investigated. clang issues errors like:
m_k[i] = (word32)uk[4*i+3] | ((word32)uk[4*i+2]<<8) | ((word32)uk[4*i+1]<<16)
| ((word32)uk[4*i]<<24);
~~~^~
3way.cpp:71:6: note: built-in candidate operator[](unsigned int *, long)
3way.cpp:71:6: note: built-in candidate operator[](const unsigned int *, long)
3way.cpp:71:6: note: built-in candidate operator[](const void *, long)
3way.cpp:71:6: note: built-in candidate operator[](volatile unsigned int *,
long)
3way.cpp:71:6: note: built-in candidate operator[](void *, long)
3way.cpp:71:6: note: built-in candidate operator[](const restrict void *, long)
3way.cpp:71:6: note: built-in candidate operator[](const volatile void *, long)
3way.cpp:71:6: note: built-in candidate operator[](restrict void *, long)
3way.cpp:71:6: note: built-in candidate operator[](volatile void *, long)
3way.cpp:71:6: note: built-in candidate operator[](volatile restrict void *,
long)
3way.cpp:71:6: note: built-in candidate operator[](const volatile restrict void
*, long)
3way.cpp:71:6: note: built-in candidate operator[](const restrict unsigned int
*, long)
3way.cpp:71:6: note: built-in candidate operator[](const volatile unsigned int
*, long)
3way.cpp:71:6: note: built-in candidate operator[](restrict unsigned int *,
long)
3way.cpp:71:6: note: built-in candidate operator[](volatile restrict unsigned
int *, long)
3way.cpp:71:6: note: built-in candidate operator[](const volatile restrict
unsigned int *, long)
...
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 17:53:51 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 17:53:51 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8534] New: Typo in Testing Infrastructure Guide
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8534
Summary: Typo in Testing Infrastructure Guide
Product: Website
Version: unspecified
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: Documentation
AssignedTo: unassignedbugs at nondot.org
ReportedBy: Trevor.W.Harmon at nasa.gov
CC: llvmbugs at cs.uiuc.edu
"another name then" should be "another name than"
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 18:01:01 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 18:01:01 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8535] New: opt -O3 silently ignores
-inline-threshold setting
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8535
Summary: opt -O3 silently ignores -inline-threshold setting
Product: tools
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: opt
AssignedTo: unassignedbugs at nondot.org
ReportedBy: stoklund at 2pi.dk
CC: llvmbugs at cs.uiuc.edu
The -inline-threshold argument is quite confusing when running opt:
"opt -O2" / "opt -O3" ignores it silently, and uses fixed values of 200 /
250.
"opt -std-compile-opts" respects -inline-threshold.
I think that opt -O2 / -O3 should use the same default inlining threshold as
clang/llvm-gcc while still allowing the threshold to be overridden with
-inline-threshold.
Also, clang and llvm-gcc use 225 for -O2 and 275 for -O3 now.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 18:13:21 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 18:13:21 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8536] New: Assertion failed:
(Value->getType()->isIntegerTy(1) && "value rep of bool not i1"),
function EmitToMemory, file CGExpr.cpp, line 605.
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8536
Summary: Assertion failed: (Value->getType()->isIntegerTy(1) &&
"value rep of bool not i1"), function EmitToMemory,
file CGExpr.cpp, line 605.
Product: clang
Version: trunk
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: stenorman2001 at me.com
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=5720)
--> (http://llvm.org/bugs/attachment.cgi?id=5720)
Configure log.
When compiling LLVM and Clang from the latest trunk (118107), an assertion
error occurs. The error is:
Assertion failed: (Value->getType()->isIntegerTy(1) && "value rep of bool not
i1"), function EmitToMemory, file CGExpr.cpp, line 605.
Attached is the output from configure and make.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 18:22:25 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 18:22:25 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8537] New: Typos in Testing Infrastructure Guide
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8537
Summary: Typos in Testing Infrastructure Guide
Product: Website
Version: unspecified
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: Documentation
AssignedTo: unassignedbugs at nondot.org
ReportedBy: Trevor.W.Harmon at nasa.gov
CC: llvmbugs at cs.uiuc.edu
"not it's src" should be "not its src"
"lookas" should be "looks"
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 18:42:09 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 18:42:09 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8535] opt -O3 silently ignores -inline-threshold
setting
In-Reply-To:
References:
Message-ID: <20101102234209.774752A6C12C@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8535
Jakob Stoklund Olesen changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 18:49:41 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 18:49:41 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8536] Assertion failed:
(Value->getType()->isIntegerTy(1) && "value rep of bool not i1"),
function EmitToMemory, file CGExpr.cpp, line 605.
In-Reply-To:
References:
Message-ID: <20101102234941.0FAD42A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8536
John McCall changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |DUPLICATE
--- Comment #2 from John McCall 2010-11-02 18:49:40 CDT ---
Please update the clang you're building with; this has been fixed for a week.
*** This bug has been marked as a duplicate of bug 8480 ***
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 19:30:37 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 19:30:37 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8537] Typos in Testing Infrastructure Guide
In-Reply-To:
References:
Message-ID: <20101103003037.EF3592A6C12C@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8537
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #4 from Chris Lattner 2010-11-02 19:30:37 CDT ---
Applied in r118131, thanks!
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 20:09:35 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 20:09:35 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8012] clang c++ incorrectly accepts operator name
as parameter name
In-Reply-To:
References:
Message-ID: <20101103010935.6234D2A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8012
Sean Hunt changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |scshunt at csclub.uwaterloo.ca
Resolution| |FIXED
--- Comment #1 from Sean Hunt 2010-11-02 20:09:35 CDT ---
Fixed in r118138
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 21:24:04 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 21:24:04 -0500 (CDT)
Subject: [LLVMbugs] [Bug 3904] An incorrect asm statement causes an assert
in clang.
In-Reply-To:
References:
Message-ID: <20101103022404.7C4142A6C12C@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=3904
Anders Carlsson changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |andersca at mac.com
Resolution| |FIXED
--- Comment #3 from Anders Carlsson 2010-11-02 21:24:03 CDT ---
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20101101/036036.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 2 21:55:13 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 2 Nov 2010 21:55:13 -0500 (CDT)
Subject: [LLVMbugs] [Bug 3905] An incorrect asm statement causes an assert
in clang.
In-Reply-To:
References:
Message-ID: <20101103025513.B2E2F2A6C12C@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=3905
Anders Carlsson changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |andersca at mac.com
Resolution| |FIXED
--- Comment #2 from Anders Carlsson 2010-11-02 21:55:13 CDT ---
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20101101/036037.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 03:05:37 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 03:05:37 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8511] likely x86 miscompile using clang
In-Reply-To:
References:
Message-ID: <20101103080537.4F37D2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8511
Duncan Sands changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #5 from Duncan Sands 2010-11-03 03:05:36 CDT ---
Maybe it was fixed by
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20101101/110916.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 03:17:20 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 03:17:20 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8534] Typo in Testing Infrastructure Guide
In-Reply-To:
References:
Message-ID: <20101103081720.6C7522A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8534
Duncan Sands changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |baldrick at free.fr
Resolution| |FIXED
--- Comment #1 from Duncan Sands 2010-11-03 03:17:20 CDT ---
I updated the web page.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 04:18:26 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 04:18:26 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8538] New: clang with -O3 optimization level
redefines functions from the included headers
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8538
Summary: clang with -O3 optimization level redefines functions
from the included headers
Product: clang
Version: 2.7
Platform: PC
OS/Version: Linux
Status: NEW
Keywords: compile-fail
Severity: normal
Priority: P
Component: LLVM Codegen
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: xinfinity_a at yahoo.com
CC: llvmbugs at cs.uiuc.edu
Overview:
Compile time errors "multiple definition of ... " for a number of functions
from the included headers (stdio.h, stdlib.h, math.h etc) , when compiling the
perlbench benchmark from SPEC CPU 2006 with clang -O3. In the LLVM IR [obtained
with -S -emit-llvm], the functions are already redefined in all the files *.ll
generated from the C source files in perlbench.
Steps to Reproduce:
1) Install SPEC CPU 2006
2) Use the attached config file (llvm.cfg) to build and run the benchmark: in
this file, clang is specified as the compiler in use and the optimization level
is O3
runspec --size test --tune base --noreportable --config llvm.cfg
400.perlbench
Actual Results:
The benchmark cannot be compiled, the errors are in make.err file
I have tried also passing the option -std= with c98, c99, gnu99 and I got the
same errors.
Expected Results:
The application should successfully build and run. I tested the same benchmark
with optimization level O0 and it compiled and run correctly.
Build Date & Platform:
I have tested the released version 2.7.
I have installed LLVM and clang from sources with --enable-optimized and
--enable-assertions options.
I have a PC with Intel(R) Xeon(R) CPU on 64 bits and I am using Ubuntu 10.04
LTS - the Lucid Lynx.
Additional Builds and Platforms:
The bug appears in version 2.8 as well as in the version from the svn
repository: 29 Oct 2010 10:47AM.
Additional Information:
I attach the generated *.ll files: the ones generated with clang -O0 (which run
correctly) and the ones generated with -O3 (which contain multiple
definitions). Also the make.err file generated by the SPEC suite, containing
the errors, and the config file llvm.cfg I have used. I have changed only the
optimization level to obtain these two different sets of files.
The original files are available in SPEC CPU 2006 and the benchmark causing
problems is perlbench.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 08:35:26 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 08:35:26 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8539] New: clang++ chashes on invalid code.
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8539
Summary: clang++ chashes on invalid code.
Product: clang
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: zaffanella at cs.unipr.it
CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com
Created an attachment (id=5725)
--> (http://llvm.org/bugs/attachment.cgi?id=5725)
Invalid code resulting in a segfault.
The attached test (from gcc testsuite) causes a segmentation fault in clang
SemaOverload.cpp:2731.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 09:40:38 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 09:40:38 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8540] New: "llvm-gcc -m96bit-long-double" addresses
memory incorrectly
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8540
Summary: "llvm-gcc -m96bit-long-double" addresses memory
incorrectly
Product: new-bugs
Version: 2.8
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: jdenny at etinternational.com
CC: llvmbugs at cs.uiuc.edu
My platform is x86-64, so llvm-gcc normally folds sizeof(long double) into 16.
The problem is that "llvm-gcc -m96bit-long-double" folds sizeof(long double)
into 12, but getelementptr still assumes 16.
This problem can be demonstrated as follows:
% cat > test.c
#include
#include
#define SIZE 5
int
main(void)
{
long double *a = malloc(sizeof(long double) * SIZE);
for (int i = 0; i < SIZE; ++i)
a[i] = i+1;
for (int i = 0; i < SIZE; ++i)
printf ("a[%d] = %Lf\n", i, a[i]);
free (a);
return 0;
}
% llvm-gcc -std=c99 -m96bit-long-double -emit-llvm -S -o test.ll test.c
% llvmc test.ll
% valgrind ./a.out |& grep Invalid
==3882== Invalid write of size 4
==3882== Invalid write of size 2
==3882== Invalid read of size 4
==3882== Invalid read of size 2
Looking inside test.ll, I see f80:128:128, but I also see sizeof(long
double)*5 folded into 60. Changing f80:128:128 to f80:96:96 does not fix
the errors reported by valgrind. If I instead fix the folded constant,
the errors go away, of course.
Further discussion appears in this thread:
http://lists.cs.uiuc.edu/pipermail/llvmdev/2010-November/035936.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 10:12:20 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 10:12:20 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8541] New: Clang miscompiles libgcc's unwind-dw2.c
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8541
Summary: Clang miscompiles libgcc's unwind-dw2.c
Product: clang
Version: 2.8
Platform: PC
OS/Version: FreeBSD
Status: NEW
Severity: normal
Priority: P
Component: LLVM Codegen
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: ed at 80386.nl
CC: llvmbugs at cs.uiuc.edu
FreeBSD HEAD is currently shipped with this version of clang:
$ clang --version
FreeBSD clang version 2.8 (tags/RELEASE_28 115870) 20101007
In this thread, it is reported that OpenOffice crashes when libgcc_s.so.1 is
built with this version of Clang:
http://lists.freebsd.org/pipermail/freebsd-current/2010-November/020843.html
It turns out that this is due to some kind of miscompilation of unwind-dw2.c.
This is our version of unwind-dw2.c:
http://svn.freebsd.org/viewvc/base/head/contrib/gcc/unwind-dw2.c?view=markup
Although I realize this bug report may be too incomplete to be useful, but I'd
rather stick it here in Bugzilla to prevent it from getting lost.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 12:00:59 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 12:00:59 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8477] "overloaded operator '[]' is ambiguous" error,
probably false
In-Reply-To:
References:
Message-ID: <20101103170059.5BA092A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8477
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Douglas Gregor 2010-11-03 12:00:58 CDT ---
Fixed in Clang r118178.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 12:53:28 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 12:53:28 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7702] unclear diagnostic after 'new'
In-Reply-To:
References:
Message-ID: <20101103175328.1BD782A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7702
Nick Lewycky changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #2 from Nick Lewycky 2010-11-03 12:53:27 CDT ---
Fixed in r118181. If the error isn't quite good enough, we can iterate on it
further.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 13:07:05 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 13:07:05 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8530] Clang rejects enum comparison operators
In-Reply-To:
References:
Message-ID: <20101103180705.AC0502A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8530
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #1 from Douglas Gregor 2010-11-03 13:07:05 CDT ---
This is already fixed in Clang top-of-tree.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 16:03:19 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 16:03:19 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8542] New: Clang miscompiles valid code with -O2 on
x86 and x86-64
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8542
Summary: Clang miscompiles valid code with -O2 on x86 and
x86-64
Product: clang
Version: 2.8
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: LLVM Codegen
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: lloyd at randombit.net
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=5726)
--> (http://llvm.org/bugs/attachment.cgi?id=5726)
Testcase
Attached is a simple test case which clang 2.8 miscompiles on x86 and x86-64
with -O2 or higher (I have not traced down the specific optimization flag which
causes the problem). With GCC or ICC (any optimization level) or Clang 2.8 with
-O0 or -O1, the output is
61000000
with Clang and -O2/-O3, it is:
F9000000
I've tried to minimize the test case as much as possible; it was extracted from
real code.
Interestingly, changing
W &= rotate_right(0x00FFFFFF, 0);
to just
W &= 0x00FFFFFFF;
on line 36
the miscompilation goes away (actually removing this rotation is is not
possible in the original source, which runs this in a loop with varying byte
offsets).
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 17:07:12 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 17:07:12 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8542] Clang miscompiles valid code with -O2 on x86
and x86-64
In-Reply-To:
References:
Message-ID: <20101103220712.2AF162A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8542
Nick Lewycky changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |nlewycky at google.com
Resolution| |INVALID
--- Comment #1 from Nick Lewycky 2010-11-03 17:07:11 CDT ---
The original code is invalid:
unsigned int rotate_right(unsigned int input, unsigned int rot)
{
return ((input >> rot) | (input << (32-rot)));
}
When rot = 0, 32-rot = 32 and this performs "input << 32" which has undefined
behaviour and can produce any value we want to, even different numbers each
time.
The real code is buggy and needs to be fixed.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 17:55:32 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 17:55:32 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8543] Wrong cast kind for a const char* -> char*
cast.
In-Reply-To:
References:
Message-ID: <20101103225532.E37D42A6C130@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8543
Nick Lewycky changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |dgregor at apple.com,
| |llvmbugs at cs.uiuc.edu
Component|Frontend |C++
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 19:10:04 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 19:10:04 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8182] wrong constructor choice (templates)
In-Reply-To:
References:
Message-ID: <20101104001004.821412A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8182
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #4 from Douglas Gregor 2010-11-03 19:10:04 CDT ---
Fixed in Clang r118211.
Fun bug!
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 19:10:25 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 19:10:25 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8182] wrong constructor choice (templates)
In-Reply-To:
References:
Message-ID: <20101104001025.D26802A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8182
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |
--- Comment #5 from Douglas Gregor 2010-11-03 19:10:25 CDT ---
Oops, nevermind! Closed the wrong bug... this one is *not* fixed.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 19:11:06 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 19:11:06 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7419] Fail to recognize that return types match
through two typedefs
In-Reply-To:
References:
Message-ID: <20101104001106.3B5A82A6C130@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7419
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Douglas Gregor 2010-11-03 19:11:05 CDT ---
Fun bug! Fixed in Clang r118211.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Wed Nov 3 21:49:51 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Wed, 3 Nov 2010 21:49:51 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8544] New: -Wold-style-definition has no effect
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8544
Summary: -Wold-style-definition has no effect
Product: clang
Version: trunk
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: jpbonn-keyword-llvmbug.a51747 at corniceresearch.com
CC: llvmbugs at cs.uiuc.edu
When the following program is compiled using GCC with -Wold-style-definition it
warns about the definition of f(). Clang does not issue a warning for f().
This example was distilled from the GCC teststuite:
typedef struct {
long int p_x, p_y;
} Point;
void
f (p0, p1)
Point p0, p1;
{
if (p0.p_x != 0)
abort ();
}
int
main ()
{
Point p0, p1;
p0.p_x = p1.p_x = 0;
p0.p_y = p1.p_y = 1;
f (p0, p1);
exit(0);
}
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Thu Nov 4 00:43:21 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 4 Nov 2010 00:43:21 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8545] New: X.org 1.7.5 doesn't run,
undefined symbols in extensions
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8545
Summary: X.org 1.7.5 doesn't run, undefined symbols in
extensions
Product: clang
Version: 2.8
Platform: Other
OS/Version: FreeBSD
Status: NEW
Severity: normal
Priority: P
Component: LLVM Codegen
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: chromium at hybridsource.org
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=5735)
--> (http://llvm.org/bugs/attachment.cgi?id=5735)
xorg extension errors
I'm able to compile the X.org server with clang 2.8 and svn-r118232 but it
won't run because of undefined symbols in extension modules. The exact same
source compiles and runs fine with gcc 4.2, I've attached a diff of the two
Xorg.log files showing what happens in failure vs success. I notice that when
I compile with clang ToT, I get several warnings saying
clang: warning: argument unused during compilation: '-fvisibility=hidden'
but I don't see those same warnings with clang 2.8. In any case, X.org
compiled with both clang versions fails to run with the same undefined symbol
error.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Thu Nov 4 00:51:35 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 4 Nov 2010 00:51:35 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8546] New: CMake/MSVS: Don't be bothered with
dialogs of updating project files on Visual Studio
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8546
Summary: CMake/MSVS: Don't be bothered with dialogs of updating
project files on Visual Studio
Product: Build scripts
Version: trunk
Platform: PC
OS/Version: Windows XP
Status: NEW
Severity: enhancement
Priority: P
Component: cmake
AssignedTo: unassignedbugs at nondot.org
ReportedBy: geek4civic at gmail.com
CC: llvmbugs at cs.uiuc.edu
ZERO_CHECK easily updates project files, and sometimes we will meet hundreds of
dialogs notification. (click click click... or terminate devenv.exe with
taskmgr.exe)
By touching (or regenerating together) LLVM.sln, it might be bypassed.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Thu Nov 4 03:49:18 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 4 Nov 2010 03:49:18 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7896] c++ crash with overloading and using decl in
class template
In-Reply-To:
References:
Message-ID: <20101104084918.BD5AF2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7896
Argyrios Kyrtzidis changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |akyrtzi at gmail.com
Resolution| |FIXED
--- Comment #1 from Argyrios Kyrtzidis 2010-11-04 03:49:18 CDT ---
Fixed at r118239.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Thu Nov 4 09:07:27 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 4 Nov 2010 09:07:27 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8547] New: likely x86 miscompile using clang
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8547
Summary: likely x86 miscompile using clang
Product: new-bugs
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: regehr at cs.utah.edu
CC: llvmbugs at cs.uiuc.edu, chenyang at cs.utah.edu
The -O1 result looks wrong.
regehr at home:~$ clang -O0 foo.c -o foo
regehr at home:~$ ./foo
g_2 = 64
regehr at home:~$ clang -O1 foo.c -o foo
regehr at home:~$ ./foo
g_2 = 320
regehr at home:~$ cat foo.c
int g_2;
int printf(const char *format, ...);
int main(void) {
for (g_2 = 0; g_2 > -1; g_2++)
{
g_2 = (char)(g_2 << 6);
if (g_2)
break;
g_2 = 4;
}
printf("g_2 = %d\n", g_2);
return 0;
}
regehr at home:~$ clang -v
clang version 2.9 (trunk 118140)
Target: i386-pc-linux-gnu
Thread model: posix
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Thu Nov 4 10:26:34 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 4 Nov 2010 10:26:34 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8548] New: Patch: Support for unregistering
exception frames of functions when they are removed
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8548
Summary: Patch: Support for unregistering exception frames of
functions when they are removed
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: Target-Independent JIT
AssignedTo: unassignedbugs at nondot.org
ReportedBy: schaub-johannes at web.de
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=5736)
--> (http://llvm.org/bugs/attachment.cgi?id=5736)
The patch implementing it.
http://llvm.org/bugs/show_bug.cgi?id=8285 implemented unregistering of
exception frames upon destruction of the JIT.
This one enhances that by allowing the JIT to unregister the frames also when a
function's machine code is free'ed.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Thu Nov 4 14:05:10 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 4 Nov 2010 14:05:10 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8129] clang++ not suppressing warnings in standard
headers.
In-Reply-To:
References:
Message-ID: <20101104190510.7FB9A2A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8129
John McCall changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |rjmccall at apple.com
Resolution| |FIXED
--- Comment #1 from John McCall 2010-11-04 14:05:09 CDT ---
Fixed in r118258.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Thu Nov 4 16:17:46 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Thu, 4 Nov 2010 16:17:46 -0500 (CDT)
Subject: [LLVMbugs] [Bug 7170] llc infinite loop in getMemcpyLoadsAndStores
In-Reply-To:
References:
Message-ID: <20101104211746.ABCC02A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7170
Duncan Sands changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #5 from Duncan Sands 2010-11-04 16:17:45 CDT ---
Fixed here:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20101101/111138.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Fri Nov 5 00:10:09 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 5 Nov 2010 00:10:09 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8538] clang with -O3 optimization level redefines
functions from the included headers
In-Reply-To:
References:
Message-ID: <20101105051009.7FB1A2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8538
Dale Johannesen changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |INVALID
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Fri Nov 5 08:26:26 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 5 Nov 2010 08:26:26 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8550] New: Spurious conversion error ?
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8550
Summary: Spurious conversion error ?
Product: clang
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: zaffanella at cs.unipr.it
CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com
$ cat bug.C
struct Z {};
Z* foo(Z*);
struct B : Z
{
static const int i = sizeof( foo((B*) 0) );
};
$ clang++ -cc1 bug.C
bug.C:7:32: error: no matching function for call to 'foo'
static const int i = sizeof( foo((B*) 0) );
^~~
bug.C:3:4: note: candidate function not viable: cannot convert argument of
incomplete type 'B *' to 'Z *'
Z* foo(Z*);
^
1 error generated.
The test is compiled by both gcc and Comeau.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Fri Nov 5 08:47:49 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 5 Nov 2010 08:47:49 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8551] New: Wrong type for address-of anonymous
union member.
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8551
Summary: Wrong type for address-of anonymous union member.
Product: clang
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: zaffanella at cs.unipr.it
CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com
clang++ generates an error diagnostic when parsing the following program (from
g++ testsuite):
struct myclass {
unsigned a;
union {
unsigned x;
};
};
int main () {
myclass foo;
unsigned myclass::* member = &myclass::x;
if (&(foo.*member) != &foo.x)
return 1;
}
$ clang++ -cc1 bug.C
bug.C:13:23: error: cannot initialize a variable of type 'unsigned int
myclass::*' with an rvalue of type 'unsigned int myclass::::*'
unsigned myclass::* member = &myclass::x;
^ ~~~~~~~~~~~
1 error generated.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Fri Nov 5 10:01:31 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 5 Nov 2010 10:01:31 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8552] New: Code Generator Discards ILP Impacting
Floating-point throughput
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8552
Summary: Code Generator Discards ILP Impacting Floating-point
throughput
Product: new-bugs
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: arkerr at gatech.edu
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=5740)
--> (http://llvm.org/bugs/attachment.cgi?id=5740)
Microbenchmark revealing performance bug
I.
I've noticed an unusual behavior of the LLVM x86 code generator (with default
options) that results in nearly a 4x slow-down in floating-point throughput for
my microbenchmark. We've noticed less than expected in other benchmarks and
feel this could have a reasonable impact on many applications.
I've written a compute-intensive microbenchmark to approach theoretical peak
throughput of the target processor by issuing a large number of independent
floating-point multiplies. The distance between dependent instructions is at
least four instructions to match the latency of the floating-point functional
unit in my Intel Core2 Quad (Q9550 at 2.83 GHz).
II.
The attached microbenchmark can be built with both gcc and clang using the
following command. This prints performance results for several problem sizes.
On my Intel Q9550, I see
$ make run
gcc
# blocks GFLOPs/second
1 5.648591
2 5.650618
3 5.650704
4 5.649433
llvm
# blocks GFLOPs/second
1 0.857245
2 0.857162
3 0.857154
4 0.857187
$
Additionally, assembly files are produced by both compilers which reveal the
problem in code scheduling.
III.
The microbenchmark itself replicates the following block 512 times:
.
.
{
p1 = p1 * a;
p2 = p2 * b;
p3 = p3 * c;
p4 = p4 * d;
}
.
.
Compiling with NVCC, Ocelot, and LLVM, I can confirm the interleaved
instruction schedule with a four-instruction reuse distance. An excerpt
follows:
.
.
%r1500 = fmul float %r1496, %r24 ; compute %1500
%r1501 = fmul float %r1497, %r23
%r1502 = fmul float %r1498, %r22
%r1503 = fmul float %r1499, %r21
%r1504 = fmul float %r1500, %r24 ; first use of %1500
%r1505 = fmul float %r1501, %r23
%r1506 = fmul float %r1502, %r22
%r1507 = fmul float %r1503, %r21
%r1508 = fmul float %r1504, %r24 ; first use of %1504
.
.
The JIT compiler, however, seems to break the interleaving of independent
instructions and issues a long sequence of instructions with back-to-back
dependencies. It is as if all p1 = .. expressions are collected at once
followed by all p2 = .. expressions and so forth.
p1 = p1 * a
p1 = p1 * a
.
.
p2 = p2 * b
p2 = p2 * b
.
.
p3 = p3 * c
p3 = p3 * c
.
.
An actual excerpt of the generated x86 assembly follows:
mulss %xmm8, %xmm10
mulss %xmm8, %xmm10
.
. repeated 512 times
.
mulss %xmm7, %xmm9
mulss %xmm7, %xmm9
.
. repeated 512 times
.
mulss %xmm6, %xmm3
mulss %xmm6, %xmm3
.
. repeated 512 times
.
Since p1, p2, p3, and p4 are all independent, this reordering is correct. This
would have the possible advantage of reducing live ranges of values. However,
in this microbenchmark, the number of live values is eight single-precision
floats - well within SSE's sixteen architectural registers.
Moreover, the pipeline latency is four cycles meaning back-to-back instructions
with true dependencies cannot issue immediately. The benchmark was
intentionally written to avoid this hazard but LLVM's code generator seems to
ignore that when it schedules instructions.
When I run this benchmark on my 2.83 GHz CPU, I observe the following
performance results:
1 threads 0.648891 GFLOP/s
2 threads 1.489049 GFLOP/s
3 threads 2.209838 GFLOP/s
4 threads 2.940443 GFLOP/s
When I rewrite the generated assembly by hand to exhibit the same interleaving
as in the
LLVM IR form
.
.
mulss %xmm8, %xmm10
mulss %xmm7, %xmm9
mulss %xmm6, %xmm3
mulss %xmm5, %xmm11
mulss %xmm8, %xmm10
mulss %xmm7, %xmm9
mulss %xmm6, %xmm3
mulss %xmm5, %xmm11
mulss %xmm8, %xmm10
mulss %xmm7, %xmm9
.
.
observed performance increases by nearly a factor of four:
1 threads 2.067118 GFLOP/s
2 threads 5.569419 GFLOP/s
3 threads 8.285519 GFLOP/s
4 threads 10.81742 GFLOP/s
I show similar results with packed single-precision floating point SIMD
instructions. The LLVM-generated machine code is nearly 4x slower than the
interleaved schedule 'suggested' by the LLVM IR input.
Vectorized - No instruction interleaving - back-to-back dependencies
(issued by LLVM code generator)
1 threads 1.540621 GFLOP/s
2 threads 5.900833 GFLOP/s
3 threads 8.755953 GFLOP/s
4 threads 11.257122 GFLOP/s
Vectorized - Interleaved - stride-4 reuse distance
(hand-modified to interleave instructions)
1 threads 3.157255 GFLOP/s
2 threads 22.104369 GFLOP/s
3 threads 32.300111 GFLOP/s
4 threads 39.112162 GFLOP/s
It is worth noting that 39.1 GFLOP/s is approaching the theoretical limits of
the processor (stated to be 45.25 GFLOP/s single-precision).
I've used the llc utility to test various pre-register-allocation instruction
schedulers with the following results:
-pre-RA-sched
=default - discards ILP
=list-burr - discards ILP
=list-tdrr - crashes during code generation
=source - preserves interleaved instruction ordering and ILP
=list-hybrid - discards ILP
=list-ilp - discards ILP
=list-td - crashes during code generation
=fast - discards ILP
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Fri Nov 5 11:54:34 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 5 Nov 2010 11:54:34 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8553] New: False positive "garbage data"
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8553
Summary: False positive "garbage data"
Product: clang
Version: 2.7
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: Static Analyzer
AssignedTo: kremenek at apple.com
ReportedBy: ldm5180+clang at gmail.com
CC: llvmbugs at cs.uiuc.edu
The attached code causes "new_value" to be marked as garbage data, but it is
not. It has been set through the pointer "dest".
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Fri Nov 5 12:26:40 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 5 Nov 2010 12:26:40 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8554] New: clang fails GCC test 20020614.c: illegal
simplifications when folding constants
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8554
Summary: clang fails GCC test 20020614.c: illegal
simplifications when folding constants
Product: clang
Version: trunk
Platform: PC
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: jpbonn-keyword-llvmbug.a51747 at corniceresearch.com
CC: llvmbugs at cs.uiuc.edu
This test fails with clang v118276 on Intel OSX (and probably others). I
haven't looked at it at all. It's from the GCC testsuite:
gcc.c-torture/execute/20020614.c
/* PR c/6677 */
/* Verify that GCC doesn't perform illegal simplifications
when folding constants. */
#include
extern void abort (void);
extern void exit (int);
int main (void)
{
int i;
signed char j;
unsigned char k;
i = SCHAR_MAX;
j = ((signed char) (i << 1)) / 2;
if (j != -1)
abort();
j = ((signed char) (i * 2)) / 2;
if (j != -1)
abort();
i = UCHAR_MAX;
k = ((unsigned char) (i << 1)) / 2;
if (k != UCHAR_MAX/2)
abort();
k = ((unsigned char) (i * 2)) / 2;
if (k != UCHAR_MAX/2)
abort();
exit(0);
}
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Fri Nov 5 14:37:34 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 5 Nov 2010 14:37:34 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8556] New: error: invalid instruction mnemonic
'xcrypt'
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8556
Summary: error: invalid instruction mnemonic 'xcrypt'
Product: new-bugs
Version: trunk
Platform: Sun
OS/Version: OpenBSD
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: amitkulz at gmail.com
CC: llvmbugs at cs.uiuc.edu
/usr/src/lib/libssl/crypto/../src/crypto/engine/hw_cryptodev.c:635:19: error:
invalid instruction mnemonic 'xcrypt'
__asm __volatile("rep xcrypt-cbc" :
^
:1:6: note: instantiated into assembly here
rep xcrypt-cbc
^
This happens while compiling OpenBSD -current userland code. Googling brings me
to http://www.openbsd.org/plus35.html which mentions
Add as(1) support for the VIA C3 xmove-rng and xcrypt-{ecb,cbc,cfb,ofb}
instructions.
So LLVM backend needs to add support for 'as' for VIA instructions.
Thanks
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Fri Nov 5 18:25:58 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 5 Nov 2010 18:25:58 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8234] Assertion when instantiating template
In-Reply-To:
References:
Message-ID: <20101105232558.8EA712A6C130@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8234
Argyrios Kyrtzidis changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |akyrtzi at gmail.com
Resolution| |FIXED
--- Comment #1 from Argyrios Kyrtzidis 2010-11-05 18:25:57 CDT ---
Fixed at r118314.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Fri Nov 5 18:58:15 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Fri, 5 Nov 2010 18:58:15 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8557] New: Clang crashes when trying to compile a
file with properties
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8557
Summary: Clang crashes when trying to compile a file with
properties
Product: clang
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: js-llvm-bugzilla at webkeks.org
CC: llvmbugs at cs.uiuc.edu
assertion "(i
>= FTy->getNumParams() || FTy->getParamType(i) == Params[i]->getType()) &&
"Cal
ling a function with a bad signature!"" failed: file "Instructions.cpp", line
24
6, function "void llvm::CallInst::init(llvm::Value*, llvm::Value* const*,
unsign
ed int)"
Stack dump:
0. Program arguments: /usr/local/bin/clang -cc1 -triple
x86_64-unknown-netb
sd5.1. -S -disable-free -main-file-name PropertiesTests.m -mrelocation-model
sta
tic -mdisable-fp-elim -mconstructor-aliases -munwind-tables -target-cpu x86-64
-
target-linker-version 2.16.1 -g -resource-dir /usr/local/bin/../lib/clang/2.9
-D
STDOUT -I ../src -I .. -O2 -Wall -Werror -fconstant-string-class
OFConstantStri
ng -ferror-limit 19 -fmessage-length 0 -fblocks -fexceptions -fgnu-runtime
-fno-
constant-cfstrings -fno-common -fdiagnostics-show-option -o /tmp/cc-14497a.s -x
objective-c PropertiesTests.m
1. PropertiesTests.m:44:1: current parser token '@'
2. PropertiesTests.m:31:1: LLVM IR generation of declaration
'PropertiesTes
t'
clang: error: unable to execute command: Abort trap (core dumped)
clang: error: clang frontend command failed due to signal 1 (use -v to see
invoc
ation)
The file is: http://sprunge.us/KFLU
All other files that are similar tests, but don't contain properties, work.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sat Nov 6 02:38:39 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 6 Nov 2010 02:38:39 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8559] New: clang -arch armv6 can't load immediates
into registers
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8559
Summary: clang -arch armv6 can't load immediates into registers
Product: libraries
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: Backend: ARM
AssignedTo: unassignedbugs at nondot.org
ReportedBy: rjmccall at apple.com
CC: llvmbugs at cs.uiuc.edu
daysthatwere:clang rjmccall$ clang -v
clang version 2.9 (trunk 118329)
Target: x86_64-apple-darwin10
Thread model: posix
daysthatwere:clang rjmccall$ cat /tmp/red.m
@interface NSObject
+ (id) alloc;
@end
void bar(void);
void foo(id i) {
@synchronized (i) {
bar();
}
}
int main() {
@try {
foo([NSObject alloc]);
} @catch (id e) {
}
}
daysthatwere:clang rjmccall$ clang -arch armv6 /tmp/red.m
/var/folders/s9/s96FsWmjFfOmejEGjQKJMU+++TI/-Tmp-/cc-evXTDd.s:34:selected
processor does not support `movw r1,#0'
/var/folders/s9/s96FsWmjFfOmejEGjQKJMU+++TI/-Tmp-/cc-evXTDd.s:200:selected
processor does not support `movw r0,#0'
clang: error: assembler command failed with exit code 1 (use -v to see
invocation)
daysthatwere:clang rjmccall$
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sat Nov 6 02:54:02 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 6 Nov 2010 02:54:02 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8559] clang -arch armv6 can't load immediates into
registers
In-Reply-To:
References:
Message-ID: <20101106075402.C643C2A6C134@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8559
Eric Christopher changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #1 from Eric Christopher 2010-11-06 02:54:02 CDT ---
Fixed thusly:
[issola:lib/Target/ARM] echristo% svn ci
Sending ARM/ARMFastISel.cpp
Transmitting file data .
Committed revision 118333.
[issola:~] echristo% ~/builds/build-llvm/Debug+Asserts/bin/clang -arch armv6 -S
foo.m
[issola:~] echristo% grep movw foo.s
[issola:~] echristo%
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sat Nov 6 09:05:44 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 6 Nov 2010 09:05:44 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8560] New: Uninitialised memory access issue with
llvm::PHINode::reserveOperandSpace
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8560
Summary: Uninitialised memory access issue with
llvm::PHINode::reserveOperandSpace
Product: new-bugs
Version: trunk
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: bnwest at rice.edu
CC: llvmbugs at cs.uiuc.edu
I am developing a new optimization pass. I am experiencing some erratic
execution problems, so I decided to 'memcheck' the opt built with my -osr
optimization. The results suggest that there is an 'uninitialised value'
access. To be precise the error is "Conditional jump or move depends on
uninitialised value(s)".
This is the sequence of my code that cause the problem:
PHINode *phinode;
phinode = PHINode::Create(optype, Twine(), IV);
phinode->reserveOperandSpace(NumOperands/2);
As of revision 117932 ...
/usr/local/bin/valgrind --leak-check=yes opt sort.ssa.ll -S -o sort.osr.ll
-stats -osr
==71994== Memcheck, a memory error detector
==71994== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==71994== Using Valgrind-3.6.0 and LibVEX; rerun with -h for copyright info
==71994== Command: opt sort.ssa.ll -S -o sort.osr.ll -stats -osr
==71994==
--71994-- /Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt:
--71994-- dSYM directory is missing; consider using --dsymutil=yes
==71994== Warning: ignored attempt to set SIGUSR2 handler in sigaction();
==71994== the SIGUSR2 signal is used internally by Valgrind
==71994== Conditional jump or move depends on uninitialised value(s)
==71994== at 0x1003E71B1: llvm::PHINode::resizeOperands(unsigned int) (in
/Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x1001B4DC1: llvm::PHINode::reserveOperandSpace(unsigned int)
(in /Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x1001206DB: (anonymous
namespace)::OperatorStrengthReduction::Reduce(llvm::Instruction*, unsigned int,
llvm::Type const*, llvm::Value*) (in
/Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x100122535: (anonymous
namespace)::OperatorStrengthReduction::Replace(llvm::Instruction*,
llvm::Instruction*, llvm::Value*) (in
/Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x100122D1C: (anonymous
namespace)::OperatorStrengthReduction::ProcessSCC(std::vector >) (in
/Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x1001231D8: (anonymous
namespace)::OperatorStrengthReduction::DFS(llvm::Instruction*) (in
/Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x10012334C: (anonymous
namespace)::OperatorStrengthReduction::OSR(llvm::Function&) (in
/Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x1001234BB: (anonymous
namespace)::OperatorStrengthReduction::runOnFunction(llvm::Function&) (in
/Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x100411969:
llvm::FPPassManager::runOnFunction(llvm::Function&) (in
/Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x100411B3C: llvm::FPPassManager::runOnModule(llvm::Module&)
(in /Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x100411639: llvm::MPPassManager::runOnModule(llvm::Module&)
(in /Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
==71994== by 0x100412DEA: llvm::PassManagerImpl::run(llvm::Module&) (in
/Users/bnwest/PACE/LLVM/llvm/build/Debug+Asserts/bin/opt)
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sat Nov 6 10:50:13 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 6 Nov 2010 10:50:13 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8560] Uninitialised memory access issue with
llvm::PHINode::reserveOperandSpace
In-Reply-To:
References:
Message-ID: <20101106155014.03BD52A6C133@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8560
Brian West changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |INVALID
--- Comment #3 from Brian West 2010-11-06 10:50:13 CDT ---
This is my problem :(. The argument to llvm::PHINode::reserveOperandSpace() in
my code sometimes was not initialized.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sat Nov 6 13:30:01 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 6 Nov 2010 13:30:01 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8528] [MC X86] dct64_sse.c from MPlayer is
miscompiled
In-Reply-To:
References:
Message-ID: <20101106183001.F25F32A6C136@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8528
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #14 from Chris Lattner 2010-11-06 13:30:01 CDT ---
This is fixed in r118346, we now reject the invalid instructions with:
t.s:1:1: error: ambiguous instructions require an explicit suffix (could be
'fstps', 'fstpl', or 'fstpt')
fstp (%rax)
^
t.s:2:1: error: ambiguous instructions require an explicit suffix (could be
'fistps', or 'fistpl')
fistp (%rax)
^
t.s:3:1: error: ambiguous instructions require an explicit suffix (could be
'fists', or 'fistl')
fist (%rax)
^
Thanks again for tracking this down!
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sat Nov 6 19:42:46 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 6 Nov 2010 19:42:46 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8418] X86 assembler doesn't support div
instructions with explicit A register
In-Reply-To:
References:
Message-ID: <20101107004246.4A2A52A6C136@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8418
Charles Davis changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
Summary|X86 assembler can't infer |X86 assembler doesn't
|size suffixes on certain |support div instructions
|instructions |with explicit A register
--- Comment #1 from Charles Davis 2010-11-06 19:42:45 CDT ---
I'm sorry, I didn't know LLVM didn't even support div instructions with the
implicit accumulator operand specified explicitly. Anyway, r118364 fixes this.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sat Nov 6 22:30:14 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sat, 6 Nov 2010 22:30:14 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8561] New: LLVM miscompiles a function from Wine
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8561
Summary: LLVM miscompiles a function from Wine
Product: libraries
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: Common Code Generator Code
AssignedTo: unassignedbugs at nondot.org
ReportedBy: cdavis at mymail.mines.edu
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=5742)
--> (http://llvm.org/bugs/attachment.cgi?id=5742)
LLVM IR of miscompiled function from Wine
Now that PR8418 is fixed (thanks, Chris!), I took a stab at building Wine with
Clang at -O2. It builds successfully, but unfortunately, the resulting Wine
segfaults on start-up. This happens before Wine installs its own signal
handlers, so the OS picks it up and produces a backtrace. The backtrace pointed
to the "reserve_area" function.
I've isolated this function and compiled it to LLVM IR. I don't know where or
why this is happening, but this is preventing Wine from being usable when
compiled at -O2.
>From looking at the source, this function is a recursive function, so that
could have something to do with it.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sun Nov 7 00:40:35 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 7 Nov 2010 00:40:35 -0500 (CDT)
Subject: [LLVMbugs] [Bug 8563] New: clang hangs while optimizing a snippet
of C++ code
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8563
Summary: clang hangs while optimizing a snippet of C++ code
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: pipping at exherbo.org
CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com
At least that is what it looks like.
Compiling the file in question with g++ 4.4:
pipping at bogus ~ $ time g++ -w -c foo.cpp
real 0m16.027s
user 0m15.492s
sys 0m0.520s
pipping at bogus ~ $
Compiling it with clang++ (I aborted after a couple of minutes):
pipping at bogus ~ $ time clang++ -w -c foo.cpp
^C
real 4m26.475s
user 0m0.019s
sys 0m0.010s
pipping at bogus ~ $
What confuses me is this:
pipping at bogus ~ $ time clang++ -w -c foo.cpp -o foo.bc -emit-llvm
real 0m4.783s
user 0m4.581s
sys 0m0.198s
pipping at bogus ~ $ time llc foo.bc -o foo.o
real 0m22.721s
user 0m22.443s
sys 0m0.264s
pipping at bogus ~ $
Shouldn't one of the former two hang as well?
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sun Nov 7 09:05:17 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 7 Nov 2010 09:05:17 -0600 (CST)
Subject: [LLVMbugs] [Bug 8563] clang hangs while running the integrated
assembler for a snippet of C++ code
In-Reply-To:
References:
Message-ID: <20101107150517.C0A8C2A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8563
Rafael ?vila de Esp?ndola changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #6 from Rafael ?vila de Esp?ndola 2010-11-07 09:05:17 CST ---
Fixed in 118377.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sun Nov 7 15:51:30 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 7 Nov 2010 15:51:30 -0600 (CST)
Subject: [LLVMbugs] [Bug 8564] New: On Mac OS libLLVM-2.9svn.dylib is linked
to be used by tools only
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8564
Summary: On Mac OS libLLVM-2.9svn.dylib is linked to be used by
tools only
Product: libraries
Version: trunk
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: System Library
AssignedTo: unassignedbugs at nondot.org
ReportedBy: jerrry94087 at yahoo.com
CC: llvmbugs at cs.uiuc.edu
I configured llvm with --prefix=/opt/local/llvm
But dylib is linked with -Wl,"@executable_path/../lib/libLLVM-2.9svn.dylib"
And the way how things are on Mac OS gcc option -L/opt/local/llvm/lib doesn't
override this path @executable_path/../lib/libLLVM-2.9svn.dylib encoded into
the library itself. So the resulting libLLVM-2.9svn.dylib is only usable by
LLVM tools from under /opt/local/llvm. Other executables linked against it fail
to find @executable_path/../lib/libLLVM-2.9svn.dylib.
Linker command should be modified: @executable_path/../lib/libLLVM-2.9svn.dylib
should be replaced with /lib/libLLVM-2.9svn.dylib
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sun Nov 7 16:59:16 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 7 Nov 2010 16:59:16 -0600 (CST)
Subject: [LLVMbugs] [Bug 8545] X.org 1.7.5 doesn't run,
undefined symbols in extensions
In-Reply-To:
References:
Message-ID: <20101107225916.0EE0A2A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8545
Rafael ?vila de Esp?ndola changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #3 from Rafael ?vila de Esp?ndola 2010-11-07 16:59:15 CST ---
I added support for -rdynamic in 118384. I am marking this bug as fixed, please
reopen it the actual bug was something else.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Sun Nov 7 21:41:37 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Sun, 7 Nov 2010 21:41:37 -0600 (CST)
Subject: [LLVMbugs] [Bug 8230] invalid cast to reference to function is
allowed
In-Reply-To:
References:
Message-ID: <20101108034137.16A382A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8230
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #2 from Douglas Gregor 2010-11-07 21:41:36 CST ---
Fixed in Clang r118400, with Fasail's patch + minor tweaks.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 09:21:34 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 09:21:34 -0600 (CST)
Subject: [LLVMbugs] [Bug 7425] function arguments which are const references
fail to compile when passed an instantiation of a template function
In-Reply-To:
References:
Message-ID: <20101108152134.5E8202A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7425
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #8 from Douglas Gregor 2010-11-08 09:21:33 CST ---
Fixed in Clang r118407.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 11:06:59 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 11:06:59 -0600 (CST)
Subject: [LLVMbugs] [Bug 8553] False positive "garbage data"
In-Reply-To:
References:
Message-ID: <20101108170659.A058E2A6C12C@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8553
Ted Kremenek changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #5 from Ted Kremenek 2010-11-08 11:06:59 CST ---
(In reply to comment #4)
> (In reply to comment #3)
> > This issue doesn't reproduce on TOT clang. What version of clang are you
> > using?
>
> I am using the 2.7 package in Ubuntu Lucid Lynx 10.04.
Okay, this has been fixed since 2.7 was tagged.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 11:25:54 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 11:25:54 -0600 (CST)
Subject: [LLVMbugs] [Bug 8322] Clang 2.8 Compile fails with: "address of
overloaded function 'XXX' cannot be converted to type 'YYY' ",
succeeds in GCC 4.4.1
In-Reply-To:
References:
Message-ID: <20101108172554.BA9C92A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8322
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |DUPLICATE
--- Comment #5 from Douglas Gregor 2010-11-08 11:25:54 CST ---
Yes, this was a duplicate of PR7425. It's fixed now.
*** This bug has been marked as a duplicate of bug 7425 ***
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 12:00:21 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 12:00:21 -0600 (CST)
Subject: [LLVMbugs] [Bug 8565] New: llvm-mc cannot parse gcc output
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8565
Summary: llvm-mc cannot parse gcc output
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: Common Code Generator Code
AssignedTo: unassignedbugs at nondot.org
ReportedBy: rafael.espindola at gmail.com
CC: llvmbugs at cs.uiuc.edu
gcc 4.4.3 will compile
-------------------------------------
class ios_base {
public: virtual ~ios_base();
};
class StrStream : virtual public ios_base {
};
static void PrintTestPartResultToString() {
new StrStream;
}
----------------------------------
into
.....
jmp .LTHUNK0
.....
.set .LTHUNK0,_ZN9StrStreamD1Ev
We currently reject that since we impose the semantics that a variable is
replaced base on what has been seen so far. It might be better to switch to a
full file semantics.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 12:07:35 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 12:07:35 -0600 (CST)
Subject: [LLVMbugs] [Bug 8566] New: Valgrind output does not include file
and line number
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8566
Summary: Valgrind output does not include file and line number
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: jed at 59a2.org
CC: llvmbugs at cs.uiuc.edu
Linux, valgrind-3.6.0, clang-2.9 (trunk from this week), source compiled with
clang -g. When source is compiled with gcc, valgrind traces include source
file and line number.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 12:35:32 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 12:35:32 -0600 (CST)
Subject: [LLVMbugs] [Bug 8567] New: Incorrect code for VLA pointers
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8567
Summary: Incorrect code for VLA pointers
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: jed at 59a2.org
CC: llvmbugs at cs.uiuc.edu
Problem is for pointer of form
double (*p)[n][5];
where n is a runtime parameter. Test case attached.
$ gcc -Wall -std=c99 vla-bug.c && ./a.out
test_static: size 15 diff 15
test_var: size 15 diff 15
$ clang -Wall -std=c99 vla-bug.c && ./a.out
test_static: size 15 diff 15
test_var: size 15 diff 75
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 13:17:12 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 13:17:12 -0600 (CST)
Subject: [LLVMbugs] [Bug 7905] clang c++ crash with compound literal with
array with templated element type
In-Reply-To:
References:
Message-ID: <20101108191712.5AF592A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7905
Argyrios Kyrtzidis changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |akyrtzi at gmail.com
Resolution| |FIXED
--- Comment #2 from Argyrios Kyrtzidis 2010-11-08 13:17:11 CST ---
Fixed at r118428.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 13:24:59 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 13:24:59 -0600 (CST)
Subject: [LLVMbugs] [Bug 8182] wrong constructor choice (templates)
In-Reply-To:
References:
Message-ID: <20101108192459.7626D2A6C135@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8182
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|REOPENED |RESOLVED
Resolution| |FIXED
--- Comment #6 from Douglas Gregor 2010-11-08 13:24:58 CST ---
Fixed in Clang r118418.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 13:42:35 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 13:42:35 -0600 (CST)
Subject: [LLVMbugs] [Bug 8076] clang segfault with variably-modified
function parameters.
In-Reply-To:
References:
Message-ID: <20101108194235.53CAD2A6C130@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8076
Argyrios Kyrtzidis changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |akyrtzi at gmail.com
Resolution| |FIXED
--- Comment #2 from Argyrios Kyrtzidis 2010-11-08 13:42:34 CST ---
Works fine with trunk (r118428).
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 15:27:05 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 15:27:05 -0600 (CST)
Subject: [LLVMbugs] [Bug 8211] Cannot yet select: 0x1e75fc0: v4f32 =
X86ISD::MOVLPS 0x1e760c0, 0x1e775e0
In-Reply-To:
References:
Message-ID: <20101108212705.7EB382A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8211
Bruno Cardoso Lopes changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Bruno Cardoso Lopes 2010-11-08 15:27:05 CST ---
At least the attached bitcode is still failing. I forgot about this one!
Commited in r118445.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 16:02:39 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 16:02:39 -0600 (CST)
Subject: [LLVMbugs] [Bug 8558] TemplateArgumentLoc does not have expression
field properly set.
In-Reply-To:
References:
Message-ID: <20101108220239.315842A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8558
Nick Lewycky changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |dgregor at apple.com,
| |llvmbugs at cs.uiuc.edu,
| |nlewycky at google.com
Component|Frontend |C++
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 17:30:31 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 17:30:31 -0600 (CST)
Subject: [LLVMbugs] [Bug 8001] not seeing declaration of constructors for
previously declared template class
In-Reply-To:
References:
Message-ID: <20101108233031.1F2762A6C130@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8001
Nick Lewycky changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Nick Lewycky 2010-11-08 17:30:30 CST ---
Applied fix in r118454.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 18:27:24 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 18:27:24 -0600 (CST)
Subject: [LLVMbugs] [Bug 8441] Race condition in AttributesList
In-Reply-To:
References:
Message-ID: <20101109002724.CEFE12A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8441
Owen Anderson changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Owen Anderson 2010-11-08 18:27:24 CST ---
Fixed in r118461.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 18:36:20 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 18:36:20 -0600 (CST)
Subject: [LLVMbugs] [Bug 8442] Thread unsafety in DynamicLibrary.cpp
In-Reply-To:
References:
Message-ID: <20101109003620.A2EA52A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8442
Owen Anderson changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Owen Anderson 2010-11-08 18:36:20 CST ---
Fixed in r118463.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 18:38:36 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 18:38:36 -0600 (CST)
Subject: [LLVMbugs] [Bug 8568] New: Objective-C: warn if a retain property
setter doesn't retain (or an assign does)
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8568
Summary: Objective-C: warn if a retain property setter doesn't
retain (or an assign does)
Product: clang
Version: unspecified
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: Static Analyzer
AssignedTo: kremenek at apple.com
ReportedBy: kyle at omnigroup.com
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=5750)
--> (http://llvm.org/bugs/attachment.cgi?id=5750)
Test case
It's common to accidentally provide a property setter implementation that
doesn't follow the memory management contract specified in the property
declaration. The analyzer should catch cases in which the argument to a retain
property setter goes out of scope without an incremented retain count, as well
as cases in which the argument to an assign property setter goes out of scope
with an incremented retain count.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 19:09:05 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 19:09:05 -0600 (CST)
Subject: [LLVMbugs] [Bug 8569] New: Missing assertion propagation
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8569
Summary: Missing assertion propagation
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Keywords: quality-of-implementation
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: xinliangli at gmail.com
CC: llvmbugs at cs.uiuc.edu, xinliangli at gmail.com
Trivial Test:
int g;
int foo (int i)
{
if (i == 1)
{
g = i + 1;
}
else if (i == 10)
g = 2*i;
return g;
}
Clang -O2 -fomit-frame-pointer generates:
foo:
.Leh_func_begin0:
cmpl $1, %edi
je .LBB0_3
cmpl $10, %edi
je .LBB0_4
movl g(%rip), %eax
ret
.LBB0_3:
incl %edi <---
movl %edi, g(%rip) <---
movl $2, %eax
ret
.LBB0_4:
addl %edi, %edi <---
movl %edi, g(%rip) <---
movl $20, %eax
ret
Compared with gcc -O2 result:
.LFB0:
.cfi_startproc
cmpl $1, %edi
je .L6
cmpl $10, %edi
je .L4
movl g(%rip), %eax
ret
.p2align 4,,10
.p2align 3
.L4:
movl $20, g(%rip)
movl $20, %eax
ret
.p2align 4,,10
.p2align 3
.L6:
movl $2, g(%rip)
movl $2, %eax
ret
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 19:19:21 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 19:19:21 -0600 (CST)
Subject: [LLVMbugs] [Bug 7611] Not emitting covariant thunk
In-Reply-To:
References:
Message-ID: <20101109011921.695912A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7611
John McCall changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |rjmccall at apple.com
Resolution| |FIXED
--- Comment #1 from John McCall 2010-11-08 19:19:20 CST ---
Fixed in r118466.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 19:32:46 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 19:32:46 -0600 (CST)
Subject: [LLVMbugs] [Bug 8567] Incorrect code for VLA pointers
In-Reply-To:
References:
Message-ID: <20101109013246.2101E2A6C124@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8567
Argyrios Kyrtzidis changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |akyrtzi at gmail.com
Resolution| |FIXED
--- Comment #2 from Argyrios Kyrtzidis 2010-11-08 19:32:45 CST ---
Fixed at r118468.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 19:51:21 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 19:51:21 -0600 (CST)
Subject: [LLVMbugs] [Bug 6060] Crash in 2D VLA arrays in function arguments
In-Reply-To:
References:
Message-ID: <20101109015121.B9A3E2A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=6060
Argyrios Kyrtzidis changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |akyrtzi at gmail.com
Resolution| |FIXED
--- Comment #1 from Argyrios Kyrtzidis 2010-11-08 19:51:19 CST ---
Works fine on trunk (r118468).
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 21:31:43 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 21:31:43 -0600 (CST)
Subject: [LLVMbugs] [Bug 8025] clang c++ diagnostic for bitfield with
non-integral type missing source location
In-Reply-To:
References:
Message-ID: <20101109033143.A78DD2A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8025
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Douglas Gregor 2010-11-08 21:31:43 CST ---
Fixed in Clang r118481 by Jakub's patch.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Mon Nov 8 23:19:43 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Mon, 8 Nov 2010 23:19:43 -0600 (CST)
Subject: [LLVMbugs] [Bug 8570] New: Segfault while passing variable-sized
arrays.
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8570
Summary: Segfault while passing variable-sized arrays.
Product: clang
Version: 2.8
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: Frontend
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: cg.wowus.cg at gmail.com
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=5752)
--> (http://llvm.org/bugs/attachment.cgi?id=5752)
The crashing program.
I have attached a short, 16 line program which segfaults the clang front end. I
believe I've reduced it down as far as possible, and don't really know what to
do with it next. My workaround at the moment is to just use llvm-gcc -std=c99.
Compiling:
clang bug.c
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 9 01:17:43 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 9 Nov 2010 01:17:43 -0600 (CST)
Subject: [LLVMbugs] [Bug 8571] New: Missing store sinking
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8571
Summary: Missing store sinking
Product: new-bugs
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: xinliangli at gmail.com
CC: llvmbugs at cs.uiuc.edu
// Test case
struct A {
int a;
int b;
};
int foo (struct A *this, int n, int m )
{
int s = 0;
if (__builtin_expect(m,0))
{
s = this->a;
}
else
{
this->a = m; // should be sinked
}
if (__builtin_expect (n,1))
{
this->a = n;
}
return s;
}
// -O2 output:
foo:
.Leh_func_begin0:
pushq %rbp
.Ltmp0:
movq %rsp, %rbp
.Ltmp1:
testl %edx, %edx
je .LBB0_2
movl (%rdi), %eax
jmp .LBB0_3
.LBB0_2:
movl %edx, (%rdi) # Partially dead store not sinked
xorl %eax, %eax
.LBB0_3:
testl %esi, %esi
je .LBB0_5
movl %esi, (%rdi)
.LBB0_5:
popq %rbp
ret
David
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 9 02:10:14 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 9 Nov 2010 02:10:14 -0600 (CST)
Subject: [LLVMbugs] [Bug 8572] New: Incomplete type based aliasing support
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8572
Summary: Incomplete type based aliasing support
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: All
Status: NEW
Keywords: quality-of-implementation
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: xinliangli at gmail.com
CC: llvmbugs at cs.uiuc.edu, xinliangli at gmail.com
This is probably a known limitation as the tbaa support is unfinished.
Test case:
truct BUF1
{
int b1;
int b12;
};
struct BUF2
{
int b2;
int g;
};
int foo(int n, struct BUF1* p, struct BUF2* q)
{
int i = 0;
for (i = 0; i < n; i++)
{
p->b1 += q->b2;
}
return 0;
}
// gcc -O2 generates:
6 foo:
7 .LFB0:
8 .cfi_startproc
9 testl %edi, %edi
10 jle .L2
11 movl (%rdx), %eax
12 decl %edi
13 movl (%rsi), %edx
14 imull %eax, %edi
15 addl %eax, %edx
16 addl %edx, %edi
17 movl %edi, (%rsi)
18 .L2:
19 xorl %eax, %eax
20 ret
// clang -O2 -fomit-frame-pointer -mllvm -enable-tbaa generates:
6 foo:
7 .Leh_func_begin0:
8 testl %edi, %edi
9 jle .LBB0_3
10 movl (%rsi), %eax
11 .align 16, 0x90
12 .LBB0_2:
13 addl (%rdx), %eax
14 movl %eax, (%rsi)
15 decl %edi
16 jne .LBB0_2
17 .LBB0_3:
18 xorl %eax, %eax
19 ret
Gcc flattens the loop and folds the computation, but llvm keeps the loop with
load and store.
Note for simple scalar type, llvm works fine.
Example from SPEC06 libquantum:
1 typedef struct quantum_reg_node_struct {
2 int state;
3 } quantum_reg_node;
4
5 typedef struct quantum_reg_struct {
6 int size; quantum_reg_node* node;
7 } quantum_reg;
8
9 void foo( quantum_reg* reg,int target)
10 {
11 int i;
12 for (i = 0 ; i < reg->size; i++)
13 {
14 reg->node[i].state^= (1<< target);
15 }
16 }
The load of reg->size and reg->node should be hoisted out of the loop.
Loop from gcc:
19 .L3:
20 xorl %edx, (%rax,%rcx,4)
21 incq %rcx
22 cmpl %ecx, %r8d
23 jg .L3
Loop from clang/llvm:
16 .LBB0_2:
17 xorl %eax, (%rcx,%rdx,4)
18 incq %rdx
19 cmpl (%rdi), %edx <--- extra load
20 jl .LBB0_2
David
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 9 08:22:45 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 9 Nov 2010 08:22:45 -0600 (CST)
Subject: [LLVMbugs] [Bug 8573] New: Cannot yet select: intrinsic
%llvm.x86.sse3.monitor
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=8573
Summary: Cannot yet select: intrinsic %llvm.x86.sse3.monitor
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: baldrick at free.fr
CC: llvmbugs at cs.uiuc.edu
This is on x86-64 linux. The testcase is pr27696.c from the gcc testsuite.
$ llvm-gcc -S -msse3 pr27696.c
cc1: error in backend: Cannot yet select: intrinsic %llvm.x86.sse3.monitor
$ cat pr27696.c
/* PR target/27696
The testcase below uses to trigger an ICE. */
/* { dg-do compile } */
/* { dg-options "-msse3" } */
void
foo (void const * P, unsigned int E, unsigned int H)
{
__builtin_ia32_monitor (P, E, H);
}
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 9 10:13:54 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 9 Nov 2010 10:13:54 -0600 (CST)
Subject: [LLVMbugs] [Bug 8013] clang c++ calling address of overload set
fails
In-Reply-To:
References:
Message-ID: <20101109161354.D52E12A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8013
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #1 from Douglas Gregor 2010-11-09 10:13:54 CST ---
Fixed in Clang r118508.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 9 11:48:24 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 9 Nov 2010 11:48:24 -0600 (CST)
Subject: [LLVMbugs] [Bug 8570] Segfault while passing variable-sized arrays.
In-Reply-To:
References:
Message-ID: <20101109174824.DF33F2A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8570
Argyrios Kyrtzidis changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Argyrios Kyrtzidis 2010-11-09 11:48:24 CST ---
Works fine on trunk (r118514).
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 9 12:11:53 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 9 Nov 2010 12:11:53 -0600 (CST)
Subject: [LLVMbugs] [Bug 6842] inliner inlines recursive call,
defeats loop-deletion
In-Reply-To:
References:
Message-ID: <20101109181153.78A4D2A6C12C@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=6842
Owen Anderson changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|REOPENED |RESOLVED
CC| |resistor at mac.com
Resolution| |WORKSFORME
--- Comment #4 from Owen Anderson 2010-11-09 12:11:52 CST ---
This seems to be fixed now. opt -O2 reduces the testcase to "return 10000;"
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 9 14:04:35 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 9 Nov 2010 14:04:35 -0600 (CST)
Subject: [LLVMbugs] [Bug 8013] clang c++ calling address of overload set
fails
In-Reply-To:
References:
Message-ID: <20101109200435.994DE2A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8013
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|FIXED |INVALID
--- Comment #2 from Douglas Gregor 2010-11-09 14:04:35 CST ---
Update: GCC and Clang were actually correct to reject this code. I've reverted
the fix in 118620; see that commit for a more detailed discussion.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 9 14:14:55 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 9 Nov 2010 14:14:55 -0600 (CST)
Subject: [LLVMbugs] [Bug 8380] Assertion `StartColNo <= EndColNo && "Invalid
range!"' on invalid code
In-Reply-To:
References:
Message-ID: <20101109201455.78E7D2A6C12D@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=8380
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #1 from Chris Lattner 2010-11-09 14:14:54 CST ---
Fixed in r118625, thanks!
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at llvm.org Tue Nov 9 15:09:04 2010
From: bugzilla-daemon at llvm.org (bugzilla-daemon at llvm.org)
Date: Tue, 9 Nov 2010 15:09:04 -0600 (CST)
Subject: [LLVMbugs] [Bug 7863] Function template and ?: causes segfault
In-Reply-To:
References:
Message-ID: <20101109210904.DD2B42A6C12E@llvm.org>
http://llvm.org/bugs/show_bug.cgi?id=7863
Douglas Gregor changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #9 from Douglas Gregor