- Jun 24, 2012
-
-
NAKAMURA Takumi authored
llvm-svn: 159112
-
- Dec 20, 2011
-
-
Chandler Carruth authored
likely to stay either way that discussion ends up resolving itself. llvm-svn: 146966
-
- Nov 29, 2011
-
-
Daniel Dunbar authored
llvm-svn: 145420
-
- Nov 12, 2011
-
-
Daniel Dunbar authored
build: Attempt to rectify inconsistencies between CMake and LLVMBuild versions of explicit dependencies. - The hope is that we have a tool/test to verify these are accurate (and tight) soon. llvm-svn: 144444
-
- Nov 04, 2011
-
-
Daniel Dunbar authored
added a layer of indirection with no value (not even conciseness). llvm-svn: 143727
-
- Oct 06, 2011
-
-
Peter Collingbourne authored
llvm-svn: 141266
-
- Sep 28, 2011
-
-
Jakob Stoklund Olesen authored
I'll clean up the source in the next commit. llvm-svn: 140663
-
- Aug 23, 2011
-
-
Bruno Cardoso Lopes authored
SSE transition penalty. The pass is enabled through the "x86-use-vzeroupper" llc command line option. This is only the first step (very naive and conservative one) to sketch out the idea, but proper DFA is coming next to allow smarter decisions. Comments and ideas now and in further commits will be very appreciated. llvm-svn: 138317
-
- Jul 29, 2011
-
-
Chandler Carruth authored
specified in the same file that the library itself is created. This is more idiomatic for CMake builds, and also allows us to correctly specify dependencies that are missed due to bugs in the GenLibDeps perl script, or change from compiler to compiler. On Linux, this returns CMake to a place where it can relably rebuild several targets of LLVM. I have tried not to change the dependencies from the ones in the current auto-generated file. The only places I've really diverged are in places where I was seeing link failures, and added a dependency. The goal of this patch is not to start changing the dependencies, merely to move them into the correct location, and an explicit form that we can control and change when necessary. This also removes a serialization point in the build because we don't have to scan all the libraries before we begin building various tools. We no longer have a step of the build that regenerates a file inside the source tree. A few other associated cleanups fall out of this. This isn't really finished yet though. After talking to dgregor he urged switching to a single CMake macro to construct libraries with both sources and dependencies in the arguments. Migrating from the two macros to that style will be a follow-up patch. Also, llvm-config is still generated with GenLibDeps.pl, which means it still has slightly buggy dependencies. The internal CMake 'llvm-config-like' macro uses the correct explicitly specified dependencies however. A future patch will switch llvm-config generation (when using CMake) to be based on these deps as well. This may well break Windows. I'm getting a machine set up now to dig into any failures there. If anyone can chime in with problems they see or ideas of how to solve them for Windows, much appreciated. llvm-svn: 136433
-
- Jul 26, 2011
-
-
Chandler Carruth authored
The first problem to fix is to stop creating synthetic *Table_gen targets next to all of the LLVM libraries. These had no real effect as CMake specifies that add_custom_command(OUTPUT ...) directives (what the 'tablegen(...)' stuff expands to) are implicitly added as dependencies to all the rules in that CMakeLists.txt. These synthetic rules started to cause problems as we started more and more heavily using tablegen files from *subdirectories* of the one where they were generated. Within those directories, the set of tablegen outputs was still available and so these synthetic rules added them as dependencies of those subdirectories. However, they were no longer properly associated with the custom command to generate them. Most of the time this "just worked" because something would get to the parent directory first, and run tablegen there. Once run, the files existed and the build proceeded happily. However, as more and more subdirectories have started using this, the probability of this failing to happen has increased. Recently with the MC refactorings, it became quite common for me when touching a large enough number of targets. To add insult to injury, several of the backends *tried* to fix this by adding explicit dependencies back to the parent directory's tablegen rules, but those dependencies didn't work as expected -- they weren't forming a linear chain, they were adding another thread in the race. This patch removes these synthetic rules completely, and adds a much simpler function to declare explicitly that a collection of tablegen'ed files are referenced by other libraries. From that, we can add explicit dependencies from the smaller libraries (such as every architectures Desc library) on this and correctly form a linear sequence. All of the backends are updated to use it, sometimes replacing the existing attempt at adding a dependency, sometimes adding a previously missing dependency edge. Please let me know if this causes any problems, but it fixes a rather persistent and problematic source of build flakiness on our end. llvm-svn: 136023
-
- Jul 25, 2011
-
-
Evan Cheng authored
llvm-svn: 135939
-
- Jul 15, 2011
-
-
Chandler Carruth authored
backend. Moved some MCAsmInfo files down into the MCTargetDesc sublibraries, removed some (i suspect long) dead files from other parts of the CMake build, etc. Also copied the include directory hack from the Makefile. Finally, updated the lib deps. I spot checked this, and think its correct, but review appreciated there. llvm-svn: 135234
-
- Jul 02, 2011
-
-
Evan Cheng authored
llvm-svn: 134281
-
- Jun 28, 2011
-
-
Evan Cheng authored
llvm-svn: 134024
-
- Jun 27, 2011
-
-
Evan Cheng authored
into XXXGenRegisterInfo.inc. llvm-svn: 133922
-
- Jun 25, 2011
-
-
Evan Cheng authored
llvm-svn: 133846
-
- Jun 24, 2011
-
-
Evan Cheng authored
target machine from those that are only needed by codegen. The goal is to sink the essential target description into MC layer so we can start building MC based tools without needing to link in the entire codegen. First step is to refactor TargetRegisterInfo. This patch added a base class MCRegisterInfo which TargetRegisterInfo is derived from. Changed TableGen to separate register description from the rest of the stuff. llvm-svn: 133782
-
- Feb 20, 2011
-
-
Oscar Fuentes authored
of testing for its presence at cmake time. This way the build automatically regenerates the makefiles when a svn update brings in a new sublibrary. llvm-svn: 126068
-
- Jan 10, 2011
-
-
Anton Korobeynikov authored
llvm-svn: 123171
-
- Jan 02, 2011
-
-
Oscar Fuentes authored
llvm-svn: 122706
-
- Dec 31, 2010
-
-
Oscar Fuentes authored
is necessary for executing the custom command that runs the assember. Fixes PR8877. llvm-svn: 122649
-
- Dec 20, 2010
-
-
Daniel Dunbar authored
llvm-svn: 122246
-
- Nov 16, 2010
-
-
Oscar Fuentes authored
Patch by Louis Zhuang! llvm-svn: 119394
-
- Nov 15, 2010
-
-
Anton Korobeynikov authored
llvm-svn: 119098
-
- Sep 14, 2010
-
-
Michael J. Spencer authored
This reverts commit r113632 Conflicts: cmake/modules/AddLLVM.cmake llvm-svn: 113819
-
- Sep 10, 2010
-
-
Michael J. Spencer authored
llvm-svn: 113632
-
- Aug 09, 2010
-
-
Oscar Fuentes authored
Next time the build is broken due to wrong library dependencies, just try building again (if you are on some Unix and are building all LLVM targets) or ask someone to commit the regenerated LLVMLibDeps.cmake. llvm-svn: 110593
-
- Jul 22, 2010
-
-
Chandler Carruth authored
especially on other platforms. Is there a better way to fix this. llvm-svn: 109084
-
- Jul 20, 2010
-
-
Daniel Dunbar authored
llvm-svn: 108787
-
- Jul 16, 2010
-
-
Jakob Stoklund Olesen authored
pass that inserted it. It is no longer necessary to limit the live ranges of FP registers to a single basic block. llvm-svn: 108536
-
- May 13, 2010
-
-
Oscar Fuentes authored
Patch by Dimitry Andric! llvm-svn: 103727
-
- Apr 17, 2010
-
-
Dan Gohman authored
llvm-svn: 101564
-
- Apr 14, 2010
-
-
Douglas Gregor authored
bit (we're not trying to build a shared library yet) and generating the X86GenEDInfo.inc and ARMGenEDInfo.inc files as necessary. llvm-svn: 101188
-
- Mar 25, 2010
-
-
Jakob Stoklund Olesen authored
On Nehalem and newer CPUs there is a 2 cycle latency penalty on using a register in a different domain than where it was defined. Some instructions have equvivalents for different domains, like por/orps/orpd. The SSEDomainFix pass tries to minimize the number of domain crossings by changing between equvivalent opcodes where possible. This is a work in progress, in particular the pass doesn't do anything yet. SSE instructions are tagged with their execution domain in TableGen using the last two bits of TSFlags. Note that not all instructions are tagged correctly. Life just isn't that simple. The SSE execution domain issue is very similar to the ARM NEON/VFP pipeline issue handled by NEONMoveFixPass. This pass may become target independent to handle both. llvm-svn: 99524
-
- Mar 24, 2010
-
-
Jakob Stoklund Olesen authored
This reverts commit 99345. It was breaking buildbots. llvm-svn: 99352
-
Jakob Stoklund Olesen authored
This is work in progress. So far, SSE execution domain tables are added to X86InstrInfo, and a skeleton pass is enabled with -sse-domain-fix. llvm-svn: 99345
-
- Mar 16, 2010
-
-
Daniel Dunbar authored
- Although it would be nice to allow this decoupling, the assembler needs to be able to reason about MCSymbolRefExprs in too many places to make this viable. We can use a target specific encoding of the variant if this becomes an issue. - This patch also extends llvm-mc to support parsing of the modifiers, as opposed to lumping them in with the symbol. llvm-svn: 98592
-
- Feb 21, 2010
-
-
Daniel Dunbar authored
llvm-svn: 96763
-
- Feb 08, 2010
-
-
Chris Lattner authored
representing @GOT and friends. Use it for personality references as a first use. llvm-svn: 95588
-
- Feb 03, 2010
-
-
Chris Lattner authored
-enable-new-x86-encoder until its stable. llvm-svn: 95256
-