- Sep 25, 2012
-
-
Sebastian Pop authored
llvm-svn: 164633
-
Bill Wendling authored
llvm-svn: 164631
-
Sean Silva authored
llvm-svn: 164630
-
Bill Wendling authored
llvm-svn: 164629
-
Sebastian Pop authored
Provide interface in TargetLowering to set or get the minimum number of basic blocks whereby jump tables are generated for switch statements rather than an if sequence. getMinimumJumpTableEntries() defaults to 4. setMinimumJumpTableEntries() allows target configuration. This patch changes the default for the Hexagon architecture to 5 as it improves performance on some benchmarks. llvm-svn: 164628
-
Chad Rosier authored
llvm-svn: 164627
-
Nick Lewycky authored
doesn't transform the trivially unsafe case. llvm-svn: 164617
-
Michael Liao authored
- Turn on atomic6432.ll and add specific test case as well llvm-svn: 164616
-
Jim Grosbach authored
When a BL/BLX references a symbol in the same translation unit that is out of range, use an external relocation. The linker will use this to generate a branch island rather than a direct reference, allowing the relocation to resolve correctly. rdar://12359919 llvm-svn: 164615
-
Michael Ilseman authored
llvm-svn: 164614
-
Bob Wilson authored
llvm-svn: 164611
-
Chandler Carruth authored
to chains or cycles between PHIs and/or selects. Also add a couple of really nice test cases reduced from Kostya's reports in PR13905 and PR13906. Both are fixed by this patch. llvm-svn: 164596
-
Duncan Sands authored
Previously it was only be able to detect problems if the pointer was a numerical value (eg inttoptr i32 1 to i32*), but not if it was an alloca or globa. The reason was the use of ComputeMaskedBits: imagine you have "alloca i8, align 2", and ask ComputeMaskedBits what it knows about the bits of the alloca pointer. It can tell you that the bottom bit is known zero (due to align 2) but it can't tell you that bit 1 is known one. That's because the address could be an even multiple of 2 rather than an odd multiple, eg it might be a multiple of 4. Thus trying to use KnownOne is ineffective in the case of an alloca as it will never have any bits set. Instead look explicitly for constant offsets from allocas and globals. llvm-svn: 164595
-
Evan Cheng authored
Fix an illegal tailcall opt where the callee returns a double via xmm while caller returns x86_fp80 via st0. rdar://12229511 llvm-svn: 164588
-
Nico Weber authored
llvm-svn: 164587
-
Chandler Carruth authored
David (I think), but I would appreciate folks verifying that this fixes the big crasher. I'm still working on a reduced test case, but because this was causing problems I wanted to get the fix checked in quickly. llvm-svn: 164585
-
Nick Lewycky authored
it's not a dead store if that pointer is used. Whoops! llvm-svn: 164583
-
Michael Ilseman authored
Unit tests for IntegerDivision. Currently, just a basic sanity check to ensure that the code was generated properly. Future work would be finding some way to test the actual result that would be computed. llvm-svn: 164582
-
Jim Grosbach authored
rdar://9795790 llvm-svn: 164577
-
Nick Lewycky authored
declaration to use the same form as in the rest of the file. No functionality change. llvm-svn: 164576
-
Jim Grosbach authored
Even out-of-line jump tables can be in the code section, so mark them as data-regions for those targets which support the directives. rdar://12362871&12362974 llvm-svn: 164571
-
Chad Rosier authored
llvm-svn: 164570
-
Chad Rosier authored
Also remove an unused argument. llvm-svn: 164567
-
rdar://12360497Bob Wilson authored
I also moved the SDKROOT setting into the make flags, since clearing it from the environment isn't good enough to override a setting on the make command line. That hasn't been a problem but it could be, and it's good to be consistent with the way UNIVERSAL_SDK_PATH is handled. llvm-svn: 164565
-
Nick Lewycky authored
dead. llvm-svn: 164561
-
Nick Lewycky authored
No functionality change. llvm-svn: 164560
-
- Sep 24, 2012
-
-
Roman Divacky authored
store when handling byval arguments. Thus preventing reordering of the store with load with post-RA scheduler. llvm-svn: 164553
-
Chad Rosier authored
llvm-svn: 164548
-
Richard Osborne authored
llvm-svn: 164540
-
Richard Osborne authored
This avoids a crash in visitAllocaInst when target data isn't available. llvm-svn: 164539
-
Chandler Carruth authored
Queue the fallout. ;] llvm-svn: 164480
-
Chandler Carruth authored
integer promotion analogous to vector promotion. When there is an integer alloca being accessed both as its integer type and as a narrower integer type, promote the narrower access to "insert" and "extract" the smaller integer from the larger one, and make the integer alloca a candidate for promotion. In the new formulation, we don't care about target legal integer or use thresholds to control things. Instead, we only perform this promotion to an integer type which the frontend has already emitted a load or store for. This bounds the scope and prevents optimization passes from coalescing larger and larger entities into a single integer. llvm-svn: 164479
-
- Sep 23, 2012
-
-
Anton Korobeynikov authored
Patch by Kai! llvm-svn: 164476
-
Chandler Carruth authored
across the uses of the alloca. It's entirely possible for negative numbers to come up here, and in some rare cases simply doing the 2's complement arithmetic isn't the correct decision. Notably, we can't zext the index of the GEP. The definition of GEP is that these offsets are sign extended or truncated to the size of the pointer, and then wrapping 2's complement arithmetic used. This patch fixes an issue that comes up with *no* input from the buildbots or bootstrap afaict. The only place where it manifested, disturbingly, is Clang's own regression test suite. A reduced and targeted collection of tests are added to cope with this. Note that I've tried to pin down the potential cases of overflow, but may have missed some cases. I've tried to add a few cases to test this, but its hard because LLVM has quite limited support for >64bit constructs. llvm-svn: 164475
-
Nick Lewycky authored
llvm-svn: 164474
-
Michael Liao authored
llvm-svn: 164472
-
Craig Topper authored
llvm-svn: 164471
-
- Sep 22, 2012
-
-
Michael Liao authored
llvm-svn: 164465
-
NAKAMURA Takumi authored
llvm-svn: 164459
-
NAKAMURA Takumi authored
llvm-svn: 164458
-