| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
just argv[0]. And remove the code for searching the current
working directory and for searching PATH; the point of FindExecutable
is not to find whatever version of the executable can be found by
searching around, but to find an executable that accompanies the
current executable.
Update the tools to use sys::Program::FindProgramByName when they
want PATH searching.
llvm-svn: 78240
|
| |
|
|
| |
llvm-svn: 78135
|
| |
|
|
| |
llvm-svn: 77950
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is not just a matter of passing in the target triple from the module;
currently backends are making decisions based on the build and host
architecture. The goal is to migrate to making these decisions based off of the
triple (in conjunction with the feature string). Thus most clients pass in the
target triple, or the host triple if that is empty.
This has one important change in the way behavior of the JIT and llc.
For the JIT, it was previously selecting the Target based on the host
(naturally), but it was setting the target machine features based on the triple
from the module. Now it is setting the target machine features based on the
triple of the host.
For LLC, -march was previously only used to select the target, the target
machine features were initialized from the module's triple (which may have been
empty). Now the target triple is taken from the module, or the host's triple is
used if that is empty. Then the triple is adjusted to match -march.
The take away is that -march for llc is now used in conjunction with the host
triple to initialize the subtarget. If users want more deterministic behavior
from llc, they should use -mtriple, or set the triple in the input module.
llvm-svn: 77946
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Generate code for the Blackfin family of DSPs from Analog Devices:
http://www.analog.com/en/embedded-processing-dsp/blackfin/processors/index.html
We aim to be compatible with the exsisting GNU toolchain found at:
http://blackfin.uclinux.org/gf/project/toolchain
The back-end is experimental.
llvm-svn: 77897
|
| |
|
|
| |
llvm-svn: 77892
|
| |
|
|
| |
llvm-svn: 77859
|
| |
|
|
| |
llvm-svn: 77709
|
| |
|
|
| |
llvm-svn: 77706
|
| |
|
|
|
|
| |
- This should resolve Cygwin gcc ambiguities.
llvm-svn: 77624
|
| |
|
|
| |
llvm-svn: 77617
|
| |
|
|
| |
llvm-svn: 77614
|
| |
|
|
|
|
| |
explicitly.
llvm-svn: 77576
|
| |
|
|
| |
llvm-svn: 77477
|
| |
|
|
| |
llvm-svn: 77461
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Provides static constructors for doing number to string conversions without
using temporaries.
- There are several ways to do this, I think given the Twine constraints this
is the simplest one.
- One FIXME for fast number -> hex conversion.
- Added another comment on one last major bit of perf work Twines need, which
is to make raw_svector_ostream more efficient.
llvm-svn: 77445
|
| |
|
|
| |
llvm-svn: 77444
|
| |
|
|
| |
llvm-svn: 77425
|
| |
|
|
| |
llvm-svn: 77397
|
| |
|
|
|
|
|
| |
it conforms to the assertion added in r77245. This fixes a failure
in qa_override.c in clang's testsuite.
llvm-svn: 77255
|
| |
|
|
|
|
| |
that the subclass hasn't left any pending data in the buffer.
llvm-svn: 77245
|
| |
|
|
| |
llvm-svn: 77127
|
| |
|
|
| |
llvm-svn: 77125
|
| |
|
|
| |
llvm-svn: 77124
|
| |
|
|
|
|
| |
- This is now shorter, simpler, safer, and more efficient, what a deal.
llvm-svn: 77119
|
| |
|
|
| |
llvm-svn: 77115
|
| |
|
|
|
|
| |
- This was overkill and inconsistently implemented.
llvm-svn: 77114
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- This is a simplified mechanism which just looks up a target based on the
target triple, with a few additional flags.
- Remove getClosestStaticTargetForModule, the moral equivalent is now:
lookupTarget(Mod->getTargetTriple, true, false, ...);
- This no longer does the fuzzy matching with target data (based on endianness
and pointer width) that getClosestStaticTargetForModule was doing, but this
was deemed unnecessary.
llvm-svn: 77111
|
| |
|
|
|
|
| |
values. Hopefully this fixes PR4622.
llvm-svn: 77088
|
| |
|
|
|
|
|
|
|
|
| |
- Instead of requiring targets to define a JIT quality match function, we just
have them specify if they support a JIT.
- Target selection for the JIT just gets the host triple and looks for the best
target which matches the triple and has a JIT.
llvm-svn: 77060
|
| |
|
|
| |
llvm-svn: 76961
|
| |
|
|
| |
llvm-svn: 76957
|
| |
|
|
|
|
| |
- Not currently used.
llvm-svn: 76956
|
| |
|
|
| |
llvm-svn: 76943
|
| |
|
|
| |
llvm-svn: 76910
|
| |
|
|
|
|
| |
an off-by-one error.
llvm-svn: 76891
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Yay for '-'s and simplifications!
- I kept StringMap::GetOrCreateValue for compatibility purposes, this can
eventually go away. Likewise the StringMapEntry Create functions still follow
the old style.
- NIFC.
llvm-svn: 76888
|
| |
|
|
|
|
| |
build failure involving memset.
llvm-svn: 76838
|
| |
|
|
| |
llvm-svn: 76837
|
| |
|
|
|
|
|
|
|
|
|
| |
malloc, so there should be no functional changes to other code.
These changes are necessary since I have plans to use this allocator in the JIT
memory manager, and it needs a special allocator.
I also added some tests which helped me pinpoint some bugs.
llvm-svn: 76825
|
| |
|
|
| |
llvm-svn: 76425
|
| |
|
|
|
|
|
| |
return the smallest union of two ranges instead of just any range that happens
to contain the union.
llvm-svn: 76360
|
| |
|
|
|
|
|
|
| |
all values belonging to the intersection will belong to the resulting range.
The former was inconsistent about that point (either way is fine, just pick
one.) This is part of PR4545.
llvm-svn: 76289
|
| |
|
|
|
|
| |
none are registered.
llvm-svn: 76181
|
| |
|
|
|
|
| |
- No functionality change.
llvm-svn: 76103
|
| |
|
|
| |
llvm-svn: 76069
|
| |
|
|
|
|
| |
Varga!
llvm-svn: 75897
|
| |
|
|
| |
llvm-svn: 75889
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
immediately on every output error. Instead, add a flag to
raw_ostream, and set the flag whenever an error is detected.
The flag can be queried and cleared from the public API. This
gives applications more flexibility to handling errors in
application-specific ways.
If the flag is not cleared when the raw_ostream is destructed,
llvm_report_error is called from the destructor. This ensures
that errors are not implicitly silenced, and provides
convenient default behavior for tools like llc and opt.
Clients wishing to avoid llvm_report_error calls from
raw_ostream should check for errors and clear the error flag.
llvm-svn: 75857
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
--- Reverse-merging r75799 into '.':
U test/Analysis/PointerTracking
U include/llvm/Target/TargetMachineRegistry.h
U include/llvm/Target/TargetMachine.h
U include/llvm/Target/TargetRegistry.h
U include/llvm/Target/TargetSelect.h
U tools/lto/LTOCodeGenerator.cpp
U tools/lto/LTOModule.cpp
U tools/llc/llc.cpp
U lib/Target/PowerPC/PPCTargetMachine.h
U lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp
U lib/Target/PowerPC/PPCTargetMachine.cpp
U lib/Target/PowerPC/PPC.h
U lib/Target/ARM/ARMTargetMachine.cpp
U lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
U lib/Target/ARM/ARMTargetMachine.h
U lib/Target/ARM/ARM.h
U lib/Target/XCore/XCoreTargetMachine.cpp
U lib/Target/XCore/XCoreTargetMachine.h
U lib/Target/PIC16/PIC16TargetMachine.cpp
U lib/Target/PIC16/PIC16TargetMachine.h
U lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp
U lib/Target/Alpha/AlphaTargetMachine.cpp
U lib/Target/Alpha/AlphaTargetMachine.h
U lib/Target/X86/X86TargetMachine.h
U lib/Target/X86/X86.h
U lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.h
U lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp
U lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.h
U lib/Target/X86/X86TargetMachine.cpp
U lib/Target/MSP430/MSP430TargetMachine.cpp
U lib/Target/MSP430/MSP430TargetMachine.h
U lib/Target/CppBackend/CPPTargetMachine.h
U lib/Target/CppBackend/CPPBackend.cpp
U lib/Target/CBackend/CTargetMachine.h
U lib/Target/CBackend/CBackend.cpp
U lib/Target/TargetMachine.cpp
U lib/Target/IA64/IA64TargetMachine.cpp
U lib/Target/IA64/AsmPrinter/IA64AsmPrinter.cpp
U lib/Target/IA64/IA64TargetMachine.h
U lib/Target/IA64/IA64.h
U lib/Target/MSIL/MSILWriter.cpp
U lib/Target/CellSPU/SPUTargetMachine.h
U lib/Target/CellSPU/SPU.h
U lib/Target/CellSPU/AsmPrinter/SPUAsmPrinter.cpp
U lib/Target/CellSPU/SPUTargetMachine.cpp
U lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp
U lib/Target/Mips/MipsTargetMachine.cpp
U lib/Target/Mips/MipsTargetMachine.h
U lib/Target/Mips/Mips.h
U lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp
U lib/Target/Sparc/SparcTargetMachine.cpp
U lib/Target/Sparc/SparcTargetMachine.h
U lib/ExecutionEngine/JIT/TargetSelect.cpp
U lib/Support/TargetRegistry.cpp
llvm-svn: 75820
|