<html>
<head>
<base href="http://llvm.org/bugs/" />
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - Error in backend: Cannot select"
href="http://llvm.org/bugs/show_bug.cgi?id=15428">15428</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Error in backend: Cannot select
</td>
</tr>
<tr>
<th>Product</th>
<td>clang
</td>
</tr>
<tr>
<th>Version</th>
<td>3.2
</td>
</tr>
<tr>
<th>Hardware</th>
<td>PC
</td>
</tr>
<tr>
<th>OS</th>
<td>Linux
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>P
</td>
</tr>
<tr>
<th>Component</th>
<td>Driver
</td>
</tr>
<tr>
<th>Assignee</th>
<td>unassignedclangbugs@nondot.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>sylvestre@debian.org
</td>
</tr>
<tr>
<th>CC</th>
<td>llvmbugs@cs.uiuc.edu
</td>
</tr>
<tr>
<th>Classification</th>
<td>Unclassified
</td>
</tr></table>
<p>
<div>
<pre>Under a Debian with experimental packages, with the code at the end of the bug
report, the command:
$ clang++ -O2 -c -o ladmin.o ladmin.cpp
is failing with:
fatal error: error in backend: Cannot select: 0x2696770: i64 = fabs 0x269aa70
[ORD=16] [ID=32]
0x269aa70: i64 = zero_extend 0x269a470 [ID=31]
0x269a470: i8 = X86ISD::SETCC 0x269a870, 0x2696870:1 [ID=29]
0x269a870: i8 = Constant<9> [ID=13]
0x2696870: i64,i32 = X86ISD::SUB 0x2693e30, 0x2696670 [ID=27]
0x2693e30: i64 = add 0x2693130, 0x2695d70 [ORD=12] [ID=25]
0x2693130: i64,ch = load 0x2693b30, 0x2696470,
0x2693930<LD8[%33](tbaa=!"any pointer")> [ORD=11] [ID=24]
0x2696470: i64 = FrameIndex<5> [ORD=8] [ID=3]
0x2693930: i64 = undef [ORD=10] [ID=5]
0x2695d70: i64 = Constant<-24> [ORD=12] [ID=8]
0x2696670: i64 = X86ISD::Wrapper 0x2695c70 [ID=18]
0x2695c70: i64 = TargetGlobalAddress<[0 x i64]*
@_ZNSs4_Rep20_S_empty_rep_storageE> 0 [ID=16]
In function: _Z9term_funcv
---------
/// BEGIN ladmin.cpp
#include <string>
struct const_string
{
const_string(const std::string& s);
};
void ladmin_log(const_string);
void term_func(void)
{
ladmin_log(
static_cast<const std::string&>(
(
std::string()
)
)
);
}
/// END ladmin.cpp
--------
Please note that it might be related that I am using:
libstdc++6 - 4.8-20130102-1
libc6 - 2.16-0experimental1
Originally reported here:
<a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=701138">http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=701138</a></pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>