summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ir-gen for generating copying of scalar data members inFariborz Jahanian2009-08-102-3/+16
| | | | | | a synthesized copy constructor. llvm-svn: 78580
* g++ 4.0 doesn't have std::vector::data.Benjamin Kramer2009-08-101-1/+1
| | | | llvm-svn: 78579
* Add walking bases in reverse order.Mike Stump2009-08-101-0/+12
| | | | llvm-svn: 78578
* Change the MDNode uniquing to a ValueMap, at Devang's request.Owen Anderson2009-08-106-37/+34
| | | | llvm-svn: 78577
* split MachO section handling stuff out to its out .h/.cpp file.Chris Lattner2009-08-1012-429/+462
| | | | llvm-svn: 78576
* add a fixmeChris Lattner2009-08-101-0/+4
| | | | llvm-svn: 78575
* arm only needs to emit one .align directive for hidden nlp's, not oneChris Lattner2009-08-101-1/+1
| | | | | | per pointer. llvm-svn: 78574
* make sure that arm nonlazypointers are aligned properlyChris Lattner2009-08-101-0/+1
| | | | llvm-svn: 78573
* Fix a weird ppc64-specific link error during an llvm-gcc build:Chris Lattner2009-08-101-0/+2
| | | | | | | | | | ld: bad offset (0x00000091) for lo14 instruction pic-base fix-up in ___popcountdi2 from libgcc/./_popcountsi2_s.o The problem is that the non lazy symbol pointers need to be 8 byte aligned on ppc64 and .section doesn't have an implicit alignment like ".non_lazy_symbol_pointer" does. llvm-svn: 78572
* fix some warnings for the MSVC build, by Yonggang Luo!Chris Lattner2009-08-102-3/+2
| | | | llvm-svn: 78571
* Fixed a ir-gen bug in synthesizing copy constructors.Fariborz Jahanian2009-08-102-6/+3
| | | | llvm-svn: 78570
* Make this comment more closely reflect the code.Dan Gohman2009-08-101-1/+1
| | | | llvm-svn: 78569
* Add nounwind keywords.Dan Gohman2009-08-102-4/+4
| | | | llvm-svn: 78568
* Add support for printing loop structure information in asm comments.David Greene2009-08-103-3/+161
| | | | | | | | | | This definitely slows down asm output so put it under an -asm-exuberant flag. This information is useful when doing static analysis of performance issues. llvm-svn: 78567
* Clarify limitations of a ModulePass requiring a FunctionPass.Devang Patel2009-08-101-1/+1
| | | | llvm-svn: 78566
* llvm-mc/AsmParser: Check for matches with super classes when matchingDaniel Dunbar2009-08-102-2/+52
| | | | | | instruction operands. llvm-svn: 78565
* Checkpoint scheduling itinerary changes.David Goodwin2009-08-103-28/+53
| | | | llvm-svn: 78564
* Post RA scheduler changes. Introduce a hazard recognizer that uses the ↵David Goodwin2009-08-108-82/+342
| | | | | | target schedule information to accurately model the pipeline. Update the scheduler to correctly handle multi-issue targets. llvm-svn: 78563
* Watch out for empty BB.Evan Cheng2009-08-101-1/+1
| | | | llvm-svn: 78562
* rev, rev16, and revsh do not set CPSR.Evan Cheng2009-08-101-3/+3
| | | | llvm-svn: 78561
* Duh. Most 16-bit Thumb rr instructions are two-address. Fix table.Evan Cheng2009-08-101-9/+15
| | | | llvm-svn: 78560
* CPSR can be livein; transfer predicate operands correctly; tMUL is two-address.Evan Cheng2009-08-101-19/+57
| | | | llvm-svn: 78559
* Add support for folding loads / stores into 16-bit moves used by Thumb2.Evan Cheng2009-08-101-37/+61
| | | | llvm-svn: 78558
* 80 col violation.Evan Cheng2009-08-101-2/+3
| | | | llvm-svn: 78557
* Use tMOVgpr2gpr instead of t2MOVr.Evan Cheng2009-08-101-4/+7
| | | | llvm-svn: 78556
* Use LLVM's new error handler API to report back end errors using Diagnostic.Daniel Dunbar2009-08-102-0/+16
| | | | | | | | | | | | | | | | | | | | | | For example, -- ddunbar@giles:Frontend$ clang -c backend-errors.c fatal error: error in backend: Global variable 'a' has an invalid section specifier 'I AM, not, legal': mach-o section specifier uses an unknown section type. -- compare to: -- ddunbar@giles:Frontend$ gcc -c backend-errors.c /var/folders/DQ/DQ8GT3++HESEzT1obWBynE+++TI/-Tmp-//cc45w2pq.s:2:Expected comma after segment-name /var/folders/DQ/DQ8GT3++HESEzT1obWBynE+++TI/-Tmp-//cc45w2pq.s:2:Rest of line ignored. 1st junk character valued 77 (M). -- Yay! I am not tied to my wording choice, we could also go with "uncoverable error" for the prefix, or just leave it off entirely. llvm-svn: 78554
* Add support for a user supplied pointer argument to llvm_install_error_handler.Daniel Dunbar2009-08-102-10/+20
| | | | llvm-svn: 78553
* Move ConstantExpr handling to ResolveConstantExpr method and alsoBruno Cardoso Lopes2009-08-102-28/+87
| | | | | | add support for PtrToInt, Add, Mul. llvm-svn: 78552
* Revert r78535, it is causing a number of failures to build projects.Daniel Dunbar2009-08-1018-307/+31
| | | | | | | | | | | | | | | | | | | | | | | | --- Reverse-merging r78535 into '.': D test/Sema/altivec-init.c U include/clang/Basic/DiagnosticSemaKinds.td U include/clang/AST/Expr.h U include/clang/AST/StmtNodes.def U include/clang/Parse/Parser.h U include/clang/Parse/Action.h U tools/clang-cc/clang-cc.cpp U lib/Frontend/PrintParserCallbacks.cpp U lib/CodeGen/CGExprScalar.cpp U lib/Sema/SemaInit.cpp U lib/Sema/Sema.h U lib/Sema/SemaExpr.cpp U lib/Sema/SemaTemplateInstantiateExpr.cpp U lib/AST/StmtProfile.cpp U lib/AST/Expr.cpp U lib/AST/StmtPrinter.cpp U lib/Parse/ParseExpr.cpp U lib/Parse/ParseExprCXX.cpp llvm-svn: 78551
* Add support to reduce most of 32-bit Thumb2 arithmetic instructions.Evan Cheng2009-08-104-81/+161
| | | | llvm-svn: 78550
* Always use the 16-bit tMOVgpr2gpr instead of the 32-bit t2MOVr.Evan Cheng2009-08-101-2/+1
| | | | llvm-svn: 78549
* Make the big switch: Change MCSectionMachO to represent a section *semantically*Chris Lattner2009-08-1018-285/+727
| | | | | | | | | | | | | | | | instead of syntactically as a string. This means that it keeps track of the segment, section, flags, etc directly and asmprints them in the right format. This also includes parsing and validation support for llvm-mc and "attribute(section)", so we should now start getting errors about invalid section attributes from the compiler instead of the assembler on darwin. Still todo: 1) Uniquing of darwin mcsections 2) Move all the Darwin stuff out to MCSectionMachO.[cpp|h] 3) there are a few FIXMEs, for example what is the syntax to get the S_GB_ZEROFILL segment type? llvm-svn: 78547
* Temporary define HAVE_SYSCONF until cmake checks are done.Edward O'Callaghan2009-08-101-0/+2
| | | | llvm-svn: 78546
* Fix a FIXME for configure check for HAVE_SYSCONF.Edward O'Callaghan2009-08-102-4/+12
| | | | llvm-svn: 78545
* add a simple back() method to StringRef.Chris Lattner2009-08-101-0/+5
| | | | llvm-svn: 78544
* Use abs64 instead abs; some platforms don't have a 64-bit abs overload. ↵Benjamin Kramer2009-08-091-1/+1
| | | | | | Noticed by Yonggang Luo! llvm-svn: 78543
* warn, as gcc does, if __attribute__((malloc)) applied to function returning ↵Ryan Flynn2009-08-093-0/+15
| | | | | | non-pointer type llvm-svn: 78542
* map previously ignored __attribute((malloc)) to noalias attribute of llvm ↵Ryan Flynn2009-08-098-1/+41
| | | | | | function's return llvm-svn: 78541
* Add support to convert 32-bit instructions to 16-bit non-two-address ones.Evan Cheng2009-08-091-35/+96
| | | | llvm-svn: 78540
* fix build on linuxNuno Lopes2009-08-092-2/+2
| | | | llvm-svn: 78538
* Refactor to remove un-named struct gnu extension usage. Now ISO C89 and C99 ↵Edward O'Callaghan2009-08-0947-546/+603
| | | | | | compliant. Comment trailing endifs llvm-svn: 78537
* Improve handling of member pointers.Anders Carlsson2009-08-094-4/+56
| | | | llvm-svn: 78536
* AltiVec-style vector initializer syntax, vec4 a = (vec4)(a, b, c, d);Nate Begeman2009-08-0918-31/+307
| | | | | | | | In addition to being defined by the AltiVec PIM, this is also the vector initializer syntax used by OpenCL, so that vector literals are compatible with macro arguments. llvm-svn: 78535
* always end a section with \n on elf.Chris Lattner2009-08-091-0/+2
| | | | llvm-svn: 78534
* llvm-mc/AsmParser: Fix thinko in ClassInfo::operator<.Daniel Dunbar2009-08-091-2/+7
| | | | llvm-svn: 78533
* llvm-mc/AsmParser: Add hack to ignore Int_* and *_Int instructions for now, toDaniel Dunbar2009-08-091-0/+11
| | | | | | | | | | make it easier to see interesting ambiguities. - Also, check that user doesn't try to redefine the super class. This is a wart in the current design, in that assembler match classes aren't explicitly declared somewhere (so there isn't a unique place to declare the super class). This should probably be fixed. llvm-svn: 78532
* Disable this test for now, we don't check for super classes when matching yet.Daniel Dunbar2009-08-091-1/+2
| | | | llvm-svn: 78531
* llvm-mc/AsmParser: Implement user defined super classes.Daniel Dunbar2009-08-094-12/+113
| | | | | | - We can now discriminate SUB32ri8 from SUB32ri, for example. llvm-svn: 78530
* Add tests for Neon VZIP and VUZP instructions.Bob Wilson2009-08-092-0/+234
| | | | llvm-svn: 78529
* Add a test for Neon VTRN instructions.Bob Wilson2009-08-091-0/+117
| | | | llvm-svn: 78528
OpenPOWER on IntegriCloud