diff --git a/llvm/lib/Target/BPF/BPFISelLowering.cpp b/llvm/lib/Target/BPF/BPFISelLowering.cpp --- a/llvm/lib/Target/BPF/BPFISelLowering.cpp +++ b/llvm/lib/Target/BPF/BPFISelLowering.cpp @@ -463,9 +463,6 @@ G->getOffset(), 0); } else if (ExternalSymbolSDNode *E = dyn_cast(Callee)) { Callee = DAG.getTargetExternalSymbol(E->getSymbol(), PtrVT, 0); - fail(CLI.DL, DAG, Twine("A call to built-in function '" - + StringRef(E->getSymbol()) - + "' is not supported.")); } // Returns a chain & a flag for retval copy to use. diff --git a/llvm/test/CodeGen/BPF/warn-call.ll b/llvm/test/CodeGen/BPF/warn-call.ll --- a/llvm/test/CodeGen/BPF/warn-call.ll +++ b/llvm/test/CodeGen/BPF/warn-call.ll @@ -1,11 +1,10 @@ -; RUN: not llc -march=bpfel < %s 2>&1 >/dev/null | FileCheck %s +; RUN: llc -march=bpfel < %s | FileCheck %s -; CHECK: error: warn_call.c -; CHECK: built-in function 'memcpy' define ptr @warn(ptr returned, ptr, i64) local_unnamed_addr #0 !dbg !6 { tail call void @llvm.dbg.value(metadata ptr %0, i64 0, metadata !14, metadata !17), !dbg !18 tail call void @llvm.dbg.value(metadata ptr %1, i64 0, metadata !15, metadata !17), !dbg !19 tail call void @llvm.dbg.value(metadata i64 %2, i64 0, metadata !16, metadata !17), !dbg !20 +; CHECK: call memcpy tail call void @llvm.memcpy.p0.p0.i64(ptr %0, ptr %1, i64 %2, i1 false), !dbg !21 %4 = tail call ptr @foo(ptr %0, ptr %1, i64 %2) #5, !dbg !22 %5 = tail call fastcc ptr @bar(ptr %0), !dbg !23