Commit def0482d by Jim Stichnoth

Subzero: Remove an unwanted assert.

At the end, the ELF emitter code marks all the external symbols that are undefined in this object file, but it filters intrinsics out of this set. Previously, it was asserting on a "bad intrinsic", meaning a function whose name starts with "llvm." but doesn't match a known intrinsic. The assert doesn't really make sense here. Either it should be more strongly validated early on in the translation, or it should just pass through (and the link will probably fail, or maybe not). BUG= https://code.google.com/p/nativeclient/issues/detail?id=4319 R=kschimpf@google.com Review URL: https://codereview.chromium.org/1343283002 .
parent 1aca2307
......@@ -605,7 +605,9 @@ void ELFObjectWriter::setUndefinedSyms(const ConstantList &UndefSyms) {
Ctx.getIntrinsicsInfo().find(Name, BadIntrinsic);
if (Info)
continue;
assert(!BadIntrinsic);
// Ignore BadIntrinsic, which is set if the name begins with "llvm." but
// doesn't match a known intrinsic. If we want this to turn into an error,
// we should catch it early on.
assert(Sym->getOffset() == 0);
assert(Sym->getSuppressMangling());
SymTab->noteUndefinedSym(Name, NullSection);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment