- Aug 09, 2012
-
-
Bill Wendling authored
llvm-svn: 161529
-
- Aug 08, 2012
-
-
Bob Wilson authored
I don't have a win32 system to test, so hopefully I got them all fixed here. llvm-svn: 161519
-
- Aug 07, 2012
-
-
Jim Grosbach authored
llvm-svn: 161430
-
Bill Wendling authored
llvm-svn: 161356
-
- Aug 06, 2012
-
-
Bill Wendling authored
When the command line target options were removed from the LLVM libraries, LTO lost its ability to specify things like `-disable-fp-elim'. Add this back by adding the command line variables to the `lto' project. <rdar://problem/12038729> llvm-svn: 161353
-
Eric Christopher authored
Patch by David Hill. llvm-svn: 161344
-
- Aug 04, 2012
-
-
NAKAMURA Takumi authored
FIXME: Fix several tests on i686-win32 due to lacking of many libraries. llvm-svn: 161292
-
- Aug 03, 2012
-
-
Bob Wilson authored
I noticed that SelectionDAGBuilder::visitCall was missing a check for memcmp in TargetLibraryInfo, so that it would use custom code for memcmp calls even with -fno-builtin. I also had to add a new -disable-simplify-libcalls option to llc so that I could write a test for this. llvm-svn: 161262
-
- Jul 23, 2012
-
-
Sylvestre Ledru authored
llvm-svn: 160621
-
- Jul 19, 2012
-
-
Alexey Samsonov authored
(instead of basenames) from DWARF. Use this behavior in llvm-dwarfdump tool. Reviewed by Benjamin Kramer. llvm-svn: 160496
-
Bill Wendling authored
llvm-svn: 160480
-
Chad Rosier authored
llvm-svn: 160478
-
- Jul 03, 2012
-
-
Evan Cheng authored
llvm-svn: 159611
-
- Jul 02, 2012
-
-
Bob Wilson authored
This is still a work in progress but I believe it is currently good enough to fix PR13122 "Need unit test driver for codegen IR passes". For example, you can run llc with -stop-after=loop-reduce to have it dump out the IR after running LSR. Serializing machine-level IR is not yet supported but we have some patches in progress for that. The plan is to serialize the IR to a YAML file, containing separate sections for the LLVM IR, machine-level IR, and whatever other info is needed. Chad suggested that we stash the stop-after pass in the YAML file and use that instead of the start-after option to figure out where to restart the compilation. I think that's a great idea, but since it's not implemented yet I put the -start-after option into this patch for testing purposes. llvm-svn: 159570
-
Evan Cheng authored
llvm-svn: 159565
-
Alexey Samsonov authored
1) DIContext is now able to return function name for a given instruction address (besides file/line info). 2) llvm-dwarfdump accepts flag --functions that prints the function name (if address is specified by --address flag). 3) test case that checks the basic functionality of llvm-dwarfdump added llvm-svn: 159512
-
- Jun 28, 2012
-
-
Bill Wendling authored
include/llvm/Analysis/DebugInfo.h to include/llvm/DebugInfo.h. The reasoning is because the DebugInfo module is simply an interface to the debug info MDNodes and has nothing to do with analysis. llvm-svn: 159312
-
- Jun 27, 2012
-
-
Duncan Sands authored
requiring a module. Original patch by Sunay Ismail, simplified by Arnaud de Grandmaison, then complicated by me (if a triple was specified on the command line, output help for that triple, not for the default). llvm-svn: 159268
-
- Jun 26, 2012
-
-
Rafael Espindola authored
llvm-svn: 159227
-
- Jun 23, 2012
-
-
Lang Hames authored
llvm-svn: 159042
-
- Jun 22, 2012
-
-
Evan Cheng authored
llvm-svn: 159028
-
Lang Hames authored
boolean flag to an enum: { Fast, Standard, Strict } (default = Standard). This option controls the creation by optimizations of fused FP ops that store intermediate results in higher precision than IEEE allows (E.g. FMAs). The behavior of this option is intended to match the behaviour specified by a soon-to-be-introduced frontend flag: '-ffuse-fp-ops'. Fast mode - allows formation of fused FP ops whenever they're profitable. Standard mode - allow fusion only for 'blessed' FP ops. At present the only blessed op is the fmuladd intrinsic. In the future more blessed ops may be added. Strict mode - allow fusion only if/when it can be proven that the excess precision won't effect the result. Note: This option only controls formation of fused ops by the optimizers. Fused operations that are explicitly requested (e.g. FMA via the llvm.fma.* intrinsic) will always be honored, regardless of the value of this option. Internally TargetOptions::AllowExcessFPPrecision has been replaced by TargetOptions::AllowFPOpFusion. llvm-svn: 158956
-
- Jun 21, 2012
-
-
Nadav Rotem authored
llvm-stress: Stabalize (by using an ordered container) and add randomness to the order in which loops are generated. llvm-svn: 158908
-
- Jun 20, 2012
-
-
Lang Hames authored
This patch adds DAG combines to form FMAs from pairs of FADD + FMUL or FSUB + FMUL. The combines are performed when: (a) Either AllowExcessFPPrecision option (-enable-excess-fp-precision for llc) OR UnsafeFPMath option (-enable-unsafe-fp-math) are set, and (b) TargetLoweringInfo::isFMAFasterThanMulAndAdd(VT) is true for the type of the FADD/FSUB, and (c) The FMUL only has one user (the FADD/FSUB). If your target has fast FMA instructions you can make use of these combines by overriding TargetLoweringInfo::isFMAFasterThanMulAndAdd(VT) to return true for types supported by your FMA instruction, and adding patterns to match ISD::FMA to your FMA instructions. llvm-svn: 158757
-
- Jun 19, 2012
-
-
Rafael Espindola authored
TargetLoweringObjectFileELF. Use this to support it on X86. Unlike ARM, on X86 it is not easy to find out if .init_array should be used or not, so the decision is made via TargetOptions and defaults to off. Add a command line option to llc that enables it. llvm-svn: 158692
-
- Jun 15, 2012
-
-
Bill Wendling authored
llvm-svn: 158534
-
- Jun 13, 2012
-
-
Rafael Espindola authored
gold to work. Since the enum value LDPO_PIE has just been added to plugin-api.h, use a numeric constant for now so that we don't require an unreleased version of gold to build. llvm-svn: 158402
-
- Jun 11, 2012
-
-
Benjamin Kramer authored
llvm-svn: 158305
-
- Jun 07, 2012
-
-
Michael J. Spencer authored
llvm-svn: 158120
-
- Jun 06, 2012
-
-
Benjamin Kramer authored
LLVM is now -Wunused-private-field clean except for - lib/MC/MCDisassembler/Disassembler.h. Not sure why it keeps all those unaccessible fields. - gtest. llvm-svn: 158096
-
Benjamin Kramer authored
There are some that I didn't remove this round because they looked like obvious stubs. There are dead variables in gtest too, they should be fixed upstream. llvm-svn: 158090
-
- May 30, 2012
-
-
David Blaikie authored
This broke in r144788 when the CodeGenOpt option was moved from everywhere else (specifically, from addPassesToEmitFile) to createTargetMachine. Since LTOCodeGenerator wasn't passing the 4th argument, when the 4th parameter became the 3rd, it silently continued to compile (int->bool conversion) but meant something completely different. This change preserves the existing (accidental) and previous (default) semantics of the addPassesToEmitFile and restores the previous/intended CodeGenOpt argument by passing it appropriately to createTargetMachine. (discovered by pending changes to -Wconversion to catch constant->bool conversions) llvm-svn: 157705
-
rdar://problem/11498613Bob Wilson authored
Besides adding the new insertPass function, this patch uses it to enhance the existing -print-machineinstrs so that the MachineInstrs after a specific pass can be printed. Patch by Bin Zeng! llvm-svn: 157655
-
- May 29, 2012
-
-
Stepan Dyatkovskiy authored
llvm-svn: 157612
-
- May 20, 2012
-
-
Benjamin Kramer authored
Found by valgrind. llvm-svn: 157160
-
- May 19, 2012
-
-
Benjamin Kramer authored
llvm-svn: 157118
-
Stepan Dyatkovskiy authored
llvm-svn: 157112
-
- May 18, 2012
-
-
Jim Grosbach authored
Use a dedicated MachO load command to annotate data-in-code regions. This is the same format the linker produces for final executable images, allowing consistency of representation and use of introspection tools for both object and executable files. Data-in-code regions are annotated via ".data_region"/".end_data_region" directive pairs, with an optional region type. data_region_directive := ".data_region" { region_type } region_type := "jt8" | "jt16" | "jt32" | "jta32" end_data_region_directive := ".end_data_region" The previous handling of ARM-style "$d.*" labels was broken and has been removed. Specifically, it didn't handle ARM vs. Thumb mode when marking the end of the section. rdar://11459456 llvm-svn: 157062
-
Kevin Enderby authored
containing no symbols. Fixed the crash and fixed it not disassembling anything. llvm-svn: 157031
-
- May 16, 2012
-
-
Danil Malyshev authored
Added LLIMCJITMemoryManager to the lli. This manager will be used for MCJIT instead of DefaultJIMMemoryManager. It's more flexible for MCJIT tasks, in addition it's provides a invalidation instruction cache for code sections which will be used before JIT code will be executed. llvm-svn: 156933
-