- Feb 09, 2011
-
-
Chris Lattner authored
improve interfaces to instsimplify to take this info. llvm-svn: 125196
-
Chris Lattner authored
llvm-svn: 125195
-
Chris Lattner authored
versions of creation functions. Eventually, the "insertion point" versions of these should just be removed, we do have IRBuilder afterall. Do a massive rewrite of much of pattern match. It is now shorter and less redundant and has several other widgets I will be using in other patches. Among other changes, m_Div is renamed to m_IDiv (since it only matches integer divides) and m_Shift is gone (it used to match all binops!!) and we now have m_LogicalShift for the one client to use. Enhance IRBuilder to have "isExact" arguments to things like CreateUDiv and reduce redundancy within IRbuilder by having these methods chain to each other more instead of duplicating code. llvm-svn: 125194
-
Chris Lattner authored
an annoyance of mine when working on tests: if the input .ll file is broken, opt outputs an error and generates an empty file. FileCheck then emits its "ooh I couldn't find the first CHECK line, scanning from ..." which obfuscates the actual problem. llvm-svn: 125193
-
Chris Lattner authored
llvm-svn: 125192
-
Chris Lattner authored
llvm-svn: 125191
-
Chris Lattner authored
llvm-svn: 125190
-
Chris Lattner authored
all covered by llvm-test, which is what they were reduced from back in 2003. llvm-svn: 125189
-
Chris Lattner authored
llvm-svn: 125188
-
David Greene authored
[AVX] Implement 256-bit vector lowering for INSERT_VECTOR_ELT. llvm-svn: 125187
-
Richard Osborne authored
llvm-svn: 125186
-
Nick Lewycky authored
llvm-svn: 125185
-
John McCall authored
complaining. llvm-svn: 125184
-
John McCall authored
there were only three virtual methods of any significance. The primary way to grab child iterators now is with Stmt::child_range children(); Stmt::const_child_range children() const; where a child_range is just a std::pair of iterators suitable for being llvm::tie'd to some locals. I've left the old child_begin() and child_end() accessors in place, but it's probably a substantial penalty to grab the iterators individually now, since the switch-based dispatch is kindof inherently slower than vtable dispatch. Grabbing them together is probably a slight win over the status quo, although of course we could've achieved that with vtables, too. I also reclassified SwitchCase (correctly) as an abstract Stmt class, which (as the first such class that wasn't an Expr subclass) required some fiddling in a few places. There are somewhat gross metaprogramming hooks in place to ensure that new statements/expressions continue to implement getSourceRange() and children(). I had to work around a recent clang bug; dgregor actually fixed it already, but I didn't want to introduce a selfhosting dependency on ToT. llvm-svn: 125183
-
Zhanyong Wan authored
llvm-svn: 125182
-
Greg Clayton authored
llvm-svn: 125181
-
Nick Lewycky authored
could end up removing a different function than we intended because it was functionally equivalent, then end up with a comparison of a function against itself in the next round of comparisons (the one in the function set and the one on the deferred list). To fix this, I introduce a choice in the form of comparison for ComparableFunctions, either normal or "pointer only" used to find exact Function*'s in lookups. Also add some debugging statements. llvm-svn: 125180
-
Ted Kremenek authored
llvm-svn: 125179
-
NAKAMURA Takumi authored
llvm-svn: 125178
-
NAKAMURA Takumi authored
- Note "GnuWin32". - Note LLVM_LIT_TOOLS_DIR - Now we can run tests on VS w/e all tests might pass or not! llvm-svn: 125177
-
NAKAMURA Takumi authored
LitConfig.getBashPath() will not seek in $PATH after LitConfig.getToolsPath() was executed. llvm-svn: 125176
-
NAKAMURA Takumi authored
It seeks tools(eg. [cmp, grep, sed]) in same directory, to be sane. It seeks "bash" only in the directory found at last time. Or bash would be insane (against other tools). llvm-svn: 125175
-
NAKAMURA Takumi authored
checkToolsPath(dir,tools): return True if "dir" contains all "tools". whichTools(tools,paths): return a directory that contains all "tools" in "paths". Or return None when all "tools" were not met. llvm-svn: 125174
-
NAKAMURA Takumi authored
llvm-svn: 125173
-
NAKAMURA Takumi authored
AC_CHECK_FUNCS seeks a symbol only in libs. We should check the declaration in string.h. FIXME: I have never seen mingw(s) have strerror_s() (not _strerror_s()). FIXME: Autoconf/CMake may seek strerror_s() with the definition MINGW_HAS_SECURE_API in future. llvm-svn: 125172
-
NAKAMURA Takumi authored
Windows/Windows.h: Redefine _WIN32_WINNT here. mingw-w64 tends to define it as 0x0502 in its headers. llvm-svn: 125171
-
NAKAMURA Takumi authored
Windows/Program.inc: Eliminate the declaration of SetInformationJobObject(). It should be provided with _WIN32_WINNT>=0x0500. llvm-svn: 125170
-
NAKAMURA Takumi authored
llvm-svn: 125169
-
NAKAMURA Takumi authored
llvm-svn: 125168
-
NAKAMURA Takumi authored
llvm-svn: 125167
-
NAKAMURA Takumi authored
llvm-svn: 125166
-
NAKAMURA Takumi authored
llvm-svn: 125165
-
Devang Patel authored
llvm-svn: 125163
-
Greg Clayton authored
llvm-svn: 125162
-
rdar://problem/8972204Greg Clayton authored
<rdar://problem/8972204> Test failure: ./dotest.py -v -t -f UniversalTestCase.test_process_launch_for_universal Fix for bad architecture settings that were being used from the qHostInfo. llvm-svn: 125161
-
Ken Dyck authored
llvm-svn: 125158
-
Douglas Gregor authored
and we later find the definition, make sure that we add the definition (not the declaration) to the list of deferred definitions to emit. Fixes PR8864. Thanks to Nick Lewycky for testing this patch out llvm-svn: 125157
-
Ken Dyck authored
functionality intended. llvm-svn: 125156
-
Ted Kremenek authored
static analyzer: Further reduce the analyzer's memory usage when analyzing sqlite3 by 7-10% by recylcing "uninteresting" ExplodedNodes. The optimization involves eagerly pruning ExplodedNodes from the ExplodedGraph that contain practically no difference between the predecessor and successor nodes. For example, if the state is different between a predecessor and a node, the node is left in. Only for the 'environment' component of the state do we not care if the ExplodedNodes are different. This paves the way for future optimizations where we can reclaim the environment objects. llvm-svn: 125154
-
Ted Kremenek authored
llvm-svn: 125153
-