- Jul 30, 2013
-
-
Eric Christopher authored
sure the comments for each testcase are a bit easier to distinguish. llvm-svn: 187392
-
Eric Christopher authored
odr hashes. llvm-svn: 187391
-
Eric Christopher authored
llvm-svn: 187385
-
- Jul 29, 2013
-
-
Rafael Espindola authored
llvm-svn: 187383
-
Rafael Espindola authored
llvm-svn: 187380
-
Rafael Espindola authored
This will let us use getUniqueID instead of st_dev directly on clang. llvm-svn: 187378
-
Manman Ren authored
llvm-svn: 187375
-
Akira Hatanaka authored
llvm-svn: 187371
-
Nadav Rotem authored
Thanks Eric. llvm-svn: 187368
-
Nadav Rotem authored
llvm-svn: 187363
-
Manman Ren authored
llvm-svn: 187362
-
Nico Rieck authored
32-bit symbols have "_" as global prefix, but when forming the name of COMDAT sections this prefix is ignored. The current behavior assumes that this prefix is always present which is not the case for 64-bit and names are truncated. llvm-svn: 187356
-
Nico Rieck authored
Win64 uses CharPtrBuiltinVaList instead of X86_64ABIBuiltinVaList like other 64-bit targets. llvm-svn: 187355
-
Aaron Ballman authored
Re-application of 187310. Re-enabling warning C4275 for MSVC 11 and up, but not MSVC 10 since it is still required there. llvm-svn: 187354
-
Rafael Espindola authored
If no other operation is specified, 's' becomes an operation instead of an modifier. The s operation just creates a symbol table. It is the same as running ranlib. We assume the archive was created by a sane ar (like llvm-ar or gnu ar) and if the symbol table is present, then it is current. We use that to optimize the most common case: a broken build system that thinks it has to run ranlib. llvm-svn: 187353
-
Nico Rieck authored
Single-slash encoded entries do not require a terminating null. This bumps the maximum table size from ~1MB to ~9.5MB. llvm-svn: 187352
-
NAKAMURA Takumi authored
llvm-svn: 187351
-
Benjamin Kramer authored
PR16721. llvm-svn: 187350
-
Silviu Baranga authored
Allow generation of vmla.f32 instructions when targeting Cortex-A15. The patch also adds the VFP4 feature to Cortex-A15 and fixes the DontUseFusedMAC predicate so that we can still generate vmla.f32 instructions on non-darwin targets with VFP4. llvm-svn: 187349
-
Robert Lytton authored
llvm-svn: 187348
-
Chandler Carruth authored
infrastructure to do promotion without a domtree the same smarts about looking through GEPs, bitcasts, etc., that I just taught mem2reg about. This way, if SROA chooses to promote an alloca which still has some noisy instructions this code can cope with them. I've not used as principled of an approach here for two reasons: 1) This code doesn't really need it as we were already set up to zip through the instructions used by the alloca. 2) I view the code here as more of a hack, and hopefully a temporary one. The SSAUpdater path in SROA is a real sore point for me. It doesn't make a lot of architectural sense for many reasons: - We're likely to end up needing the domtree anyways in a subsequent pass, so why not compute it earlier and use it. - In the future we'll likely end up needing the domtree for parts of the inliner itself. - If we need to we could teach the inliner to preserve the domtree. Part of the re-work of the pass manager will allow this to be very powerful even in large SCCs with many functions. - Ultimately, computing a domtree has gotten significantly faster since the original SSAUpdater-using code went into ScalarRepl. We no longer use domfrontiers, and much of domtree is lazily done based on queries rather than eagerly. - At this point keeping the SSAUpdater-based promotion saves a total of 0.7% on a build of the 'opt' tool for me. That's not a lot of performance given the complexity! So I'm leaving this a bit ugly in the hope that eventually we just remove all of this nonsense. I can't even readily test this because this code isn't reachable except through SROA. When I re-instate the patch that fast-tracks allocas already suitable for promotion, I'll add a testcase there that failed before this change. Before that, SROA will fix any test case I give it. llvm-svn: 187347
-
Nadav Rotem authored
llvm-svn: 187340
-
Rafael Espindola authored
llvm-svn: 187336
-
Chandler Carruth authored
standards for LLVM. Remove duplicated comments on the interface from the implementation file (implementation comments are left there of course). Also clean up, re-word, and fix a few typos and errors in the commenst spotted along the way. This is in preparation for changes to these files and to keep the uninteresting tidying in a separate commit. llvm-svn: 187335
-
- Jul 28, 2013
-
-
Craig Topper authored
Remove use of sprintf added to X86 disassembler tablegen code. Send message with instruction name to errs() instead and use a generic message for the llvm_unreachable. Consistent with other places in this file. llvm-svn: 187333
-
Aaron Ballman authored
llvm-svn: 187331
-
Chandler Carruth authored
I forgot that we had two totally independent things here. :: sigh :: llvm-svn: 187327
-
Elena Demikhovsky authored
llvm-svn: 187325
-
Elena Demikhovsky authored
Added 512-bit operands printing. Added instruction formats for KNL instructions. llvm-svn: 187324
-
Chandler Carruth authored
uses of an alloca, we can pre-compute promotability while analyzing an alloca for splitting in SROA. That lets us short-circuit the common case of a bunch of trivially promotable allocas. This cuts 20% to 30% off the run time of SROA for typical frontend-generated IR sequneces I'm seeing. It gets the new SROA to within 20% of ScalarRepl for such code. My current benchmark for these numbers is PR15412, but it fits the general pattern of IR emitted by Clang so it should be widely applicable. llvm-svn: 187323
-
Chandler Carruth authored
useful in a subsequent patch, but causes an unfortunate amount of noise, so I pulled it out into a separate patch. llvm-svn: 187322
-
Bill Schmidt authored
llvm-svn: 187320
-
Bill Schmidt authored
llvm-svn: 187319
-
Bill Schmidt authored
The tests !defined(__ppc__) && !defined(__powerpc__) are not needed or helpful when verifying that code is being compiled for a 64-bit target. The simpler test provided by this revision is sufficient to tell if the target is 64-bit. llvm-svn: 187318
-
Nadav Rotem authored
llvm-svn: 187316
-
- Jul 27, 2013
-
-
Michael Gottesman authored
IEEE-754R 1.4 Exclusions states that IEEE-754R does not specify the interpretation of the sign of NaNs. In order to remove an irrelevant variable that most floating point implementations do not use, standardize add, sub, mul, div, mod so that operating anything with NaN always yields a positive NaN. In a later commit I am going to update the APIs for creating NaNs so that one can not even create a negative NaN. llvm-svn: 187314
-
Michael Gottesman authored
Zeroing the significand of a floating point number does not necessarily cause a floating point number to become finite non zero. For instance, if one has a NaN, zeroing the significand will cause it to become +/- infinity. llvm-svn: 187313
-
Michael Gottesman authored
llvm-svn: 187312
-
Aaron Ballman authored
llvm-svn: 187310
-
Matt Arsenault authored
llvm-svn: 187309
-