From b903fc5c1b62ebf7f9339d63a623596be792ef00 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sat, 10 Apr 2004 06:55:27 +0000 Subject: [PATCH] Add a couple of more functions that cannot access memory (the intrinsics) and don't write to memory git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12808 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Analysis/BasicAliasAnalysis.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/Analysis/BasicAliasAnalysis.cpp b/lib/Analysis/BasicAliasAnalysis.cpp index f9c63cd15ca..a68913574a9 100644 --- a/lib/Analysis/BasicAliasAnalysis.cpp +++ b/lib/Analysis/BasicAliasAnalysis.cpp @@ -606,6 +606,9 @@ namespace { // Note that this list cannot contain libm functions (such as acos and sqrt) // that set errno on a domain or other error. static const char *DoesntAccessMemoryTable[] = { + // LLVM intrinsics: + "llvm.frameaddress", "llvm.returnaddress", "llvm.readport", + "abs", "labs", "llabs", "imaxabs", "fabs", "fabsf", "fabsl", "trunc", "truncf", "truncl", "ldexp", @@ -685,6 +688,10 @@ static const char *OnlyReadsMemoryTable[] = { // C99 "nan", "nanf", "nand", + + // File I/O + "feof", "ferror", "fileno", + "feof_unlocked", "ferror_unlocked", "fileno_unlocked" }; static const unsigned ORMTableSize =