| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
triple component.
llvm-svn: 129838
|
|
|
|
| |
llvm-svn: 129813
|
|
|
|
| |
llvm-svn: 126226
|
|
|
|
| |
llvm-svn: 126130
|
|
|
|
|
|
| |
16 bytes for PR8969. Update all testcases accordingly.
llvm-svn: 123367
|
|
|
|
| |
llvm-svn: 121677
|
|
|
|
|
|
| |
the compiler's point of view. Per email discussion, we either want to always use VEX-prefixed instructions or never use them, and are taking "HasAVX" to mean "Always use VEX". Passing -mattr=-avx,+sse42 should serve to restore legacy SSE support when desirable.
llvm-svn: 121439
|
|
|
|
| |
llvm-svn: 120923
|
|
|
|
| |
llvm-svn: 120298
|
|
|
|
|
|
| |
defaults to small pic code model.
llvm-svn: 111741
|
|
|
|
| |
llvm-svn: 109206
|
|
|
|
| |
llvm-svn: 107625
|
|
|
|
|
|
|
|
|
|
|
| |
symbols as declarations in the X86 backend. This would manifest
on darwin x86-32 as errors like this with -fvisibility=hidden:
symbol '__ZNSbIcED1Ev' can not be undefined in a subtraction expression
This fixes PR7353.
llvm-svn: 105954
|
|
|
|
|
|
| |
To support this, move IsCalleePop from X86ISelLowering to X86Subtarget.
llvm-svn: 104866
|
|
|
|
| |
llvm-svn: 102493
|
|
|
|
| |
llvm-svn: 101979
|
|
|
|
|
|
|
|
|
| |
a new subtarget option for AES and check for the support. Add "westmere"
line of processors and add AES-NI support to the core i7.
Add a couple of TODOs for information I couldn't verify.
llvm-svn: 100231
|
|
|
|
| |
llvm-svn: 100089
|
|
|
|
| |
llvm-svn: 98810
|
|
|
|
|
|
| |
fix the rest of the buildbot failures on non-x86 hosts.
llvm-svn: 98522
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
GlobalValues now, and doesn't provide modules, it's renamed to
"GVMaterializer". Code that used to need a ModuleProvider to materialize
Functions can now materialize the Functions directly. Functions no longer use a
magic linkage to record that they're materializable; they simply ask the
GVMaterializer.
Because the C ABI must never change, we can't remove LLVMModuleProviderRef or
the functions that refer to it. Instead, because Module now exposes the same
functionality ModuleProvider used to, we store a Module* in any
LLVMModuleProviderRef and translate in the wrapper methods. The bindings to
other languages still use the ModuleProvider concept. It would probably be
worth some time to update them to follow the C++ more closely, but I don't
intend to do it.
Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735.
llvm-svn: 94686
|
|
|
|
|
|
|
|
| |
ignore alignment requirements for SIMD memory operands. This
is useful on architectures like the AMD 10h that do not trap on
unaligned references if a status bit is twiddled at startup time.
llvm-svn: 93151
|
|
|
|
| |
llvm-svn: 92648
|
|
|
|
|
|
| |
partial update instructions unless optimizing for size.
llvm-svn: 91910
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
be non-optimal. To be precise, we should avoid folding loads if the instructions
only update part of the destination register, and the non-updated part is not
needed. e.g. cvtss2sd, sqrtss. Unfolding the load from these instructions breaks
the partial register dependency and it can improve performance. e.g.
movss (%rdi), %xmm0
cvtss2sd %xmm0, %xmm0
instead of
cvtss2sd (%rdi), %xmm0
An alternative method to break dependency is to clear the register first. e.g.
xorps %xmm0, %xmm0
cvtss2sd (%rdi), %xmm0
llvm-svn: 91672
|
|
|
|
|
|
| |
current form, it is too expensive in compile time.
llvm-svn: 90781
|
|
|
|
|
|
| |
and support for blockaddresses in x86-32 PIC mode.
llvm-svn: 89506
|
|
|
|
|
|
|
|
|
| |
- This is an initial step towards -march=native support in Clang, and towards
eliminating host dependencies in the targets. See PR5389.
- Patch by Roman Divacky!
llvm-svn: 88768
|
|
|
|
|
|
| |
along the critical path.
llvm-svn: 88682
|
|
|
|
| |
llvm-svn: 86634
|
|
|
|
| |
llvm-svn: 84200
|
|
|
|
|
|
| |
non-pic mode. rdar://7187172.
llvm-svn: 80904
|
|
|
|
| |
llvm-svn: 80892
|
|
|
|
|
|
|
|
| |
whether sse is available. Just use consult subtarget.
No functionality changes.
llvm-svn: 80880
|
|
|
|
|
|
|
| |
conditional moves as a subtarget feature. This is the easy part of
PR4841.
llvm-svn: 80763
|
|
|
|
|
|
|
|
| |
Some other minor win64 fixes as well.
Patch by Michael Beck!
llvm-svn: 80370
|
|
|
|
|
|
|
| |
instead of X86 Subtarget. This elimianates dependencies on
X86Subtarget from X86TAI.
llvm-svn: 78746
|
|
|
|
| |
llvm-svn: 78219
|
|
|
|
|
|
| |
- Tidy up some headers.
llvm-svn: 77929
|
|
|
|
|
|
|
|
|
|
| |
Module*.
Also, dropped uses of TargetMachine where unnecessary. The only target which
still takes a TargetMachine& is Mips, I would appreciate it if someone would
normalize this to match other targets.
llvm-svn: 77918
|
|
|
|
| |
llvm-svn: 76356
|
|
|
|
|
|
| |
compilation mode) do not require extra load from stub. This fixes ExecutionEngine/2005-12-02-TailCallBug.ll.
llvm-svn: 76121
|
|
|
|
| |
llvm-svn: 75277
|
|
|
|
| |
llvm-svn: 75276
|
|
|
|
| |
llvm-svn: 75275
|
|
|
|
| |
llvm-svn: 75274
|
|
|
|
|
|
| |
"stub style pic in dynamic-no-pic" mode.
llvm-svn: 75273
|
|
|
|
|
|
| |
elimiantes the last use of GVRequiresExtraLoad, so delete it.
llvm-svn: 75244
|
|
|
|
|
|
| |
need for other purposes.
llvm-svn: 75243
|
|
|
|
|
|
|
| |
is just a trivial wrapper around "ClassifyGlobalReference", which
stole a ton of logic from LowerGlobalAddress.
llvm-svn: 75237
|