Dan Gohman
b0cf049a1e
Generalize ScalarEvolution to be able to analyze GEPs when
...
TargetData is not present. It still uses TargetData when available.
This generalization also fixed some limitations in the TargetData
case; the attached testcase covers this.
llvm-svn: 79344
2009-08-18 16:46:41 +00:00
Chris Lattner
bc4e7e0815
null streamer needs to maintain the current section as well.
...
llvm-svn: 79343
2009-08-18 16:46:29 +00:00
Oscar Fuentes
896c999947
CMake: LLVM_ENABLE_PIC now defaults to ON, as in `configure'. This is
...
required on some platforms for building shared libraries that link to
the LLVM libraries.
llvm-svn: 79339
2009-08-18 15:29:35 +00:00
Dan Gohman
5022dd9cc9
Make tail merging handle blocks with repeated predecessors correctly, and
...
remove RemoveDuplicateSuccessor, as it is no longer necessary, and because
it breaks assumptions made in
MachineBasicBlock::isOnlyReachableByFallthrough.
Convert test/CodeGen/X86/omit-label.ll to FileCheck and add a testcase
for PR4732.
test/CodeGen/Thumb2/thumb2-ifcvt2.ll sees a diff with this commit due to
it being bugpoint-reduced to the point where it doesn't matter what the
condition for the branch is.
Add some more interesting code to
test/CodeGen/X86/2009-08-06-branchfolder-crash.ll, which is the testcase
that originally motivated the RemoveDuplicateSuccessor code, to help
verify that the original problem isn't being re-broken.
llvm-svn: 79338
2009-08-18 15:18:18 +00:00
Dan Gohman
0b1af29372
Fix a bug that caused globalopt to miscompile tramp3d: don't miss
...
unruly indices for arrays that are members of structs.
llvm-svn: 79337
2009-08-18 14:58:19 +00:00
Anton Korobeynikov
d2d8c91b9f
Text sections should have 'exec' flag set. This seems to unbreak libstdc++ on linux.
...
Patch by Dmitry Gorbachev!
llvm-svn: 79334
2009-08-18 14:06:12 +00:00
Misha Brukman
0961ce48c4
Fixed spelling of MSP430.
...
llvm-svn: 79333
2009-08-18 13:50:28 +00:00
Daniel Dunbar
6d9b38bd58
Fix Triple to recognize the 'bfin' arch.
...
llvm-svn: 79325
2009-08-18 07:06:26 +00:00
Chris Lattner
b82fc63e02
Make AsmStreamer maintain a notion of the current section, pushing it up from the
...
MCAsmStreamer. Based on this, eliminate the current section from AsmPrinter.
While I'm at it, clean up the last of the horrible "switch to null section" stuff
and add an assert. This change is in preparation for completely eliminating
asmprinter::switchtosection.
llvm-svn: 79324
2009-08-18 06:15:16 +00:00
Chris Lattner
7a382434b5
add a horrible hack to the dwarf printer. It looks like mingw is not specifying
...
an EHFrame section, so we just emit ehframe data into a random section.
This is clearly bad.
llvm-svn: 79323
2009-08-18 06:13:03 +00:00
Nick Lewycky
6e6623b451
Include valgrind in the steps to reproduce if valgrind was used to reproduce
...
the problem.
llvm-svn: 79322
2009-08-18 06:08:01 +00:00
Chris Lattner
e01c6eb25a
remove some pointless null switchtosections. The IntelAsmPrinter doesn't really work anyway.
...
llvm-svn: 79321
2009-08-18 06:03:07 +00:00
Evan Cheng
d4d2a3d0a6
Fix revsh pattern.
...
llvm-svn: 79318
2009-08-18 05:43:23 +00:00
Chris Lattner
178666f2e3
add support for some targetflags on GV operands. This allows us to
...
send instructions like:
NEW: movl "L___stack_chk_guard$non_lazy_ptr" - "L1$pb"(%esi), %eax
OLD: movl L___stack_chk_guard$non_lazy_ptr-"L1$pb"(%esi), %eax
through the streamer. Several fixmes.
llvm-svn: 79317
2009-08-18 05:33:27 +00:00
Daniel Dunbar
763d4d3648
Recognize xscale as an ARM arch.
...
- Patch by Yonggang Luo.
llvm-svn: 79315
2009-08-18 04:51:26 +00:00
Daniel Dunbar
d4a31156e7
Add Triple matching for pic16 arch and solaris OS.
...
- Patch by Yonggang Luo.
llvm-svn: 79314
2009-08-18 04:43:27 +00:00
Chris Lattner
4efe44f456
fix another bozo bug
...
llvm-svn: 79313
2009-08-18 04:34:36 +00:00
Chris Lattner
64ac9ab553
fix accidentally inverted conditional and add comment.
...
llvm-svn: 79312
2009-08-18 04:33:15 +00:00
Chris Lattner
6270a4cc48
turn this conditional into something humans might actually
...
be able to understand ;-)
llvm-svn: 79311
2009-08-18 04:30:35 +00:00
Chris Lattner
605e44a5b0
"-" should write to stdout, not stderr.
...
llvm-svn: 79310
2009-08-18 04:03:24 +00:00
Daniel Dunbar
fd368c900e
Change bugpoint to use Triple to make runtime decisions.
...
- This is cleaner, and makes bugpoint match the host instead of the build
architecture.
- Patch by Sandeep Patel!
llvm-svn: 79309
2009-08-18 03:35:57 +00:00
Eric Christopher
51b2b8b7e6
Separate out Makefile defines so that we can keep the llvm
...
defined ones from the user defined ones. Propagate accordingly.
llvm-svn: 79308
2009-08-18 03:23:40 +00:00
Daniel Dunbar
4e5ca5c595
Add LLVMInitializeAllTargetInfos for C api, and update
...
LLVMInitializeNativeTarget to initialize target info.
- Patch by Jose Fonseca.
llvm-svn: 79307
2009-08-18 03:03:27 +00:00
Dan Gohman
b4a24b3b8b
Make TargetData optional in MemCpyOptimizer.
...
llvm-svn: 79306
2009-08-18 01:17:52 +00:00
Evan Cheng
d76e11a1ee
Even more Apple style build horribleness.
...
llvm-svn: 79299
2009-08-18 00:56:17 +00:00
Dan Gohman
3137ac23bc
Make TargetData optional in SimplifyLibCalls.
...
llvm-svn: 79298
2009-08-18 00:48:13 +00:00
Anton Korobeynikov
6e7ea624ad
Regenerate
...
llvm-svn: 79297
2009-08-18 00:40:51 +00:00
Anton Korobeynikov
c9d9a008b5
The attached patches attempt to fix cross builds. For example, if you
...
try to use i686-darwin to build for arm-eabi, you'll quickly run into
several false assumptions that the target OS must be the same as the
host OS. These patches split $(OS) into $(HOST_OS) and $(TARGET_OS) to
help builds like "make check" and the test-suite able to cross
compile. Along the way a target of *-unknown-eabi is defined as
"Freestanding" so that TARGET_OS checks have something to work with.
Patch by Sandeep Patel!
llvm-svn: 79296
2009-08-18 00:40:33 +00:00
Edward O'Callaghan
cea86566ee
LLVM Ada language bindings. Credit to Rod Kay and the AuroraUX team.
...
llvm-svn: 79295
2009-08-18 00:24:36 +00:00
Dan Gohman
e28638faa2
Fix function alignment at -Os on x86 to be 1, not 2. getFunctionAlignment
...
returns a log2 value.
llvm-svn: 79293
2009-08-18 00:20:06 +00:00
Dale Johannesen
ff6e66e502
PowerPC inline asm was emitting two output operands
...
for a single "m" constraint; this is wrong because the
opcode of a load or store would have to change in parallel.
This patch makes it always compute addresses into a register,
which is correct but not as efficient as possible. 7144566.
llvm-svn: 79292
2009-08-18 00:18:39 +00:00
Devang Patel
98fb10c182
Add prefix only if it is needed.
...
llvm-svn: 79289
2009-08-17 23:17:17 +00:00
Jim Grosbach
5883594589
cleanups per review. Mostly cosmetic, plus use SmallVector in place of std::vector.
...
llvm-svn: 79287
2009-08-17 21:40:03 +00:00
John McCall
0fe3f64893
#include <cstdlib> in the code listing for strtod.
...
llvm-svn: 79285
2009-08-17 21:07:37 +00:00
Devang Patel
b3c1574994
Oops. find all llvm.dbg.global_variables.
...
llvm-svn: 79274
2009-08-17 20:36:20 +00:00
Jim Grosbach
5d064eeb2a
Remove a bit more cruft from the sjlj moving to a backend pass.
...
llvm-svn: 79272
2009-08-17 20:25:04 +00:00
Benjamin Kramer
452962eec7
Update CMakeLists.
...
llvm-svn: 79264
2009-08-17 18:47:11 +00:00
Dan Gohman
e78d27bcf9
Update comments to new-style syntax.
...
llvm-svn: 79263
2009-08-17 18:45:31 +00:00
Daniel Dunbar
14357fdab5
Fix build warning.
...
llvm-svn: 79262
2009-08-17 18:41:42 +00:00
Owen Anderson
c7e733e4fe
Privatize the last bits of static type state.
...
llvm-svn: 79258
2009-08-17 17:59:35 +00:00
Nick Lewycky
db9fe40304
Test the pass the test is actually for, instead of one that doesn't exist.
...
llvm-svn: 79257
2009-08-17 17:41:29 +00:00
Owen Anderson
5d27af4989
Move the TypeMap lock to a member on LLVMContextImpl.
...
llvm-svn: 79256
2009-08-17 17:34:27 +00:00
Owen Anderson
43d358bde0
Add locking around the attributes list.
...
llvm-svn: 79255
2009-08-17 17:10:58 +00:00
Owen Anderson
ed218e5820
Add locking around signal handler registration.
...
llvm-svn: 79254
2009-08-17 17:07:22 +00:00
Benjamin Kramer
d1c6b5de4e
Clear the uniquing table when initializing TLOF to avoid a crash when the TLOF is reinitialized with a different MCContext.
...
llvm-svn: 79253
2009-08-17 17:05:44 +00:00
Nick Lewycky
afaae7957e
Don't crash on critical edge. Patch by Andre Tavares.
...
llvm-svn: 79252
2009-08-17 17:00:57 +00:00
Jim Grosbach
4643e96d36
Move the sjlj exception handling conversions to a back-end pass where they
...
more properly belong. This allows removing the front-end conditionalized
SJLJ code, and cleans up the generated IR considerably. All of the
infrastructure code (calling _Unwind_SjLj_Register/Unregister, etc) is
added by the SjLjEHPrepare pass.
llvm-svn: 79250
2009-08-17 16:41:22 +00:00
Richard Osborne
358842178f
Update getSectionForConstant() to to allow mergable sections to be nulled out
...
if not supported by the ELF subtarget.
llvm-svn: 79249
2009-08-17 16:37:11 +00:00
David Goodwin
d65007a4a3
Extend the instruction itinerary model to include the ability to indicate the def and use cycle for each operand. This additional information is optional, so existing itineraries do not need to be changed.
...
llvm-svn: 79247
2009-08-17 16:02:57 +00:00
Chris Lattner
0ed3ef52af
the MinPad argument to PadToColumn only really makes sense to be 1,
...
just remove the argument and replace it with 1.
llvm-svn: 79246
2009-08-17 15:48:08 +00:00