Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Consolidate ConvertGlobalValIDToValue, ConvertGlobalOrMetadataValIDToValue, ↵ | Victor Hernandez | 2010-01-11 | 1 | -4/+1 | |
| | | | | | | and ConvertValIDToValue into a more powerful ConvertValIDToValue() that does all three's work llvm-svn: 93197 | |||||
* | Compute isFunctionLocal in MDNode ctor or via argument in new function ↵ | Victor Hernandez | 2010-01-10 | 1 | -4/+2 | |
| | | | | | | | | getWhenValsUnresolved(). Document PFS argument to ParseValID() and ConvertGlobalOrMetadataValIDToValue(). llvm-svn: 93108 | |||||
* | When parsing function-local metadata, create a function-local MDNode | Victor Hernandez | 2010-01-06 | 1 | -2/+4 | |
| | | | | llvm-svn: 92838 | |||||
* | Re-add parsing of function-local metadata; this time with testcase. | Victor Hernandez | 2010-01-05 | 1 | -11/+10 | |
| | | | | llvm-svn: 92793 | |||||
* | now that instruction metadata is only parsed in one place, eliminate the | Chris Lattner | 2009-12-30 | 1 | -2/+2 | |
| | | | | | | | parser-global MDsOnInst vector and make ParseInstructionMetadata return its result by-ref through an argument like the entire rest of the parser. llvm-svn: 92302 | |||||
* | reimplement ParseOptionalInfo as ParseOptionalCommaAlign, correctly | Chris Lattner | 2009-12-30 | 1 | -4/+4 | |
| | | | | | | handle the comma case for metadata. llvm-svn: 92301 | |||||
* | rename ParseOptionalCustomMetadata -> ParseInstructionMetadata, | Chris Lattner | 2009-12-30 | 1 | -1/+1 | |
| | | | | | | | and make it non-optional. This fixes the bug where we'd accept and ignore a spurious comma after some instructions. llvm-svn: 92300 | |||||
* | convert 4 more instructions over. | Chris Lattner | 2009-12-30 | 1 | -4/+4 | |
| | | | | llvm-svn: 92299 | |||||
* | add facilities to start factoring instruction metadata parsing | Chris Lattner | 2009-12-30 | 1 | -4/+6 | |
| | | | | | | out of each opcode's handler. Change ret over so far. llvm-svn: 92298 | |||||
* | reimplement insertvalue/extractvalue metadata handling to not blindly | Chris Lattner | 2009-12-30 | 1 | -1/+8 | |
| | | | | | | accept invalid input. Actually add a testcase. llvm-svn: 92297 | |||||
* | rename MetadataCache -> NumberedMetadata to follow the convention | Chris Lattner | 2009-12-30 | 1 | -2/+1 | |
| | | | | | | | used by other things. Convert it to a vector since it is a dense numbering. llvm-svn: 92293 | |||||
* | rewrite ParseMDNodeVector to follow the normal patter used in the .ll parser. | Chris Lattner | 2009-12-30 | 1 | -0/+2 | |
| | | | | llvm-svn: 92292 | |||||
* | rename ParseMDNode -> ParseMDNodeID, since it parses !42, not !{... } as ↵ | Chris Lattner | 2009-12-30 | 1 | -1/+1 | |
| | | | | | | you'd expect. llvm-svn: 92291 | |||||
* | remove the code added in r90497. It has several major issues and no tests. | Chris Lattner | 2009-12-30 | 1 | -2/+0 | |
| | | | | llvm-svn: 92288 | |||||
* | split t_Metadata into t_MDNode and t_MDString, eliminating some unsafe casting. | Chris Lattner | 2009-12-30 | 1 | -2/+4 | |
| | | | | llvm-svn: 92287 | |||||
* | change ParseMDString and ParseMDNode to take arguments of the right type. | Chris Lattner | 2009-12-29 | 1 | -2/+2 | |
| | | | | | | | This exposed a raft of other problems, which I'll deal with in subsequent patches. llvm-svn: 92273 | |||||
* | switch to TrackingVH instead of WeakVH, since these can never | Chris Lattner | 2009-12-29 | 1 | -3/+3 | |
| | | | | | | | be RAUW'd and go to null. This also gets us some sorely lacking type safety. llvm-svn: 92272 | |||||
* | Metadata.h doesn't need to include ValueHandle.h anymore. | Chris Lattner | 2009-12-28 | 1 | -0/+1 | |
| | | | | llvm-svn: 92211 | |||||
* | Add ParseInlineMetadata() which can parses metadata that refers to an ↵ | Victor Hernandez | 2009-12-03 | 1 | -1/+3 | |
| | | | | | | instruction. Extend ParseParameterList() to use this new function so that calls to llvm.dbg.declare can pass inline metadata llvm-svn: 90497 | |||||
* | Use WeakVH while storing metadata in containers. | Devang Patel | 2009-11-05 | 1 | -2/+2 | |
| | | | | | | This fixes PR5393. llvm-svn: 86091 | |||||
* | full asmparser support for blockaddress. We can now do: | Chris Lattner | 2009-10-28 | 1 | -4/+51 | |
| | | | | | | | | | $ llvm-as foo.ll -d -disable-output which reads and prints the .ll file. BC encoding is the next project. Testcase will go in once that works. llvm-svn: 85368 | |||||
* | rename indbr -> indirectbr to appease the residents of #llvm. | Chris Lattner | 2009-10-28 | 1 | -1/+1 | |
| | | | | llvm-svn: 85351 | |||||
* | add enough support for indirect branch for the feature test to pass | Chris Lattner | 2009-10-27 | 1 | -1/+8 | |
| | | | | | | | (assembler,asmprinter, bc reader+writer) and document it. Codegen currently aborts on it. llvm-svn: 85274 | |||||
* | Auto-upgrade free instructions to calls to the builtin free function. | Victor Hernandez | 2009-10-24 | 1 | -1/+1 | |
| | | | | | | | Update all analysis passes and transforms to treat free calls just like FreeInst. Remove RaiseAllocations and all its tests since FreeInst no longer needs to be raised. llvm-svn: 84987 | |||||
* | Autoupgrade malloc insts to malloc calls. | Victor Hernandez | 2009-10-17 | 1 | -2/+5 | |
| | | | | | | | | Update testcases that rely on malloc insts being present. Also prematurely remove MallocInst handling from IndMemRemoval and RaiseAllocations to help pass tests in this incremental step. llvm-svn: 84292 | |||||
* | Parse custom metadata attached with an instruction. | Devang Patel | 2009-09-29 | 1 | -1/+1 | |
| | | | | llvm-svn: 83033 | |||||
* | Do not use global typedef for MDKindID. | Devang Patel | 2009-09-28 | 1 | -1/+1 | |
| | | | | llvm-svn: 83016 | |||||
* | Revert 82694 "Auto-upgrade malloc instructions to malloc calls." because it ↵ | Victor Hernandez | 2009-09-25 | 1 | -5/+2 | |
| | | | | | | causes regressions in the nightly tests. llvm-svn: 82784 | |||||
* | Auto-upgrade malloc instructions to malloc calls. | Victor Hernandez | 2009-09-24 | 1 | -2/+5 | |
| | | | | | | Reviewed by Devang Patel. llvm-svn: 82694 | |||||
* | Fix parsing of optional metadata for 'load', 'store' and 'alloc' instructions. | Devang Patel | 2009-09-17 | 1 | -2/+3 | |
| | | | | llvm-svn: 82175 | |||||
* | Retype from unsigned to CallingConv::ID accordingly. Approved by Bob Wilson. | Sandeep Patel | 2009-09-02 | 1 | -1/+1 | |
| | | | | llvm-svn: 80773 | |||||
* | Extend the AsmWriter to print unnamed numbered types as "%0 = type ..." | Dan Gohman | 2009-08-12 | 1 | -0/+1 | |
| | | | | | | | and unnamed numbered global variables as "@0 = global ...". Extend the AsmParser to recognize these forms. llvm-svn: 78859 | |||||
* | Parse named metadata. | Devang Patel | 2009-07-29 | 1 | -0/+1 | |
| | | | | llvm-svn: 77410 | |||||
* | Derive MDNode from MetadataBase instead of Constant. Emit MDNodes into ↵ | Devang Patel | 2009-07-23 | 1 | -3/+3 | |
| | | | | | | METADATA_BLOCK in bitcode file. llvm-svn: 76834 | |||||
* | Introduce MetadataBase, a base class for MDString and MDNode. | Devang Patel | 2009-07-22 | 1 | -1/+2 | |
| | | | | | | | Derive MDString directly from MetadataBase. Introduce new bitcode block to hold metadata. llvm-svn: 76759 | |||||
* | Refactor metadata parsing routines into separate functions. | Devang Patel | 2009-07-20 | 1 | -0/+2 | |
| | | | | llvm-svn: 76455 | |||||
* | Support MDNode forward reference. | Devang Patel | 2009-07-08 | 1 | -0/+2 | |
| | | | | llvm-svn: 75031 | |||||
* | Use LLVMContext in the LLLexer. | Owen Anderson | 2009-07-07 | 1 | -1/+1 | |
| | | | | llvm-svn: 74934 | |||||
* | switch the .ll parser to use SourceMgr. | Chris Lattner | 2009-07-02 | 1 | -2/+2 | |
| | | | | llvm-svn: 74735 | |||||
* | switch the .ll parser into SMDiagnostic. | Chris Lattner | 2009-07-02 | 1 | -1/+1 | |
| | | | | llvm-svn: 74734 | |||||
* | Use LLVMContext for generating UndefValue constants too! | Owen Anderson | 2009-07-02 | 1 | -0/+2 | |
| | | | | llvm-svn: 74703 | |||||
* | Try again at converting the LLParser to use LLVMContext, without massive ↵ | Owen Anderson | 2009-07-01 | 1 | -2/+4 | |
| | | | | | | breakage this time. llvm-svn: 74671 | |||||
* | --- Reverse-merging (from foreign repository) r74648 into '.': | Bill Wendling | 2009-07-01 | 1 | -5/+2 | |
| | | | | | | | | | | | U include/llvm/LLVMContext.h U lib/VMCore/LLVMContext.cpp U lib/AsmParser/LLParser.cpp U lib/AsmParser/LLParser.h Temporarily reverting r74648. It was causing massive failures in release mode. llvm-svn: 74653 | |||||
* | Convert LLParser to use LLVMContext for creating constants. | Owen Anderson | 2009-07-01 | 1 | -2/+5 | |
| | | | | llvm-svn: 74648 | |||||
* | Support stand alone metadata syntax. | Devang Patel | 2009-07-01 | 1 | -1/+3 | |
| | | | | | | | !0 = constant metadata !{i32 21, i32 22} @llvm.blah = constant metadata !{i32 1000, i16 200, metadata !0} llvm-svn: 74630 | |||||
* | Make MDNode use CallbackVH. Also change MDNode to store Value* instead of | Nick Lewycky | 2009-05-10 | 1 | -1/+1 | |
| | | | | | | | Constant* in preperation of a future change to support holding non-Constants in an MDNode. llvm-svn: 71407 | |||||
* | Add support for embedded metadata to LLVM. This introduces two new types of | Nick Lewycky | 2009-04-04 | 1 | -0/+3 | |
| | | | | | | | | Constant, MDString and MDNode which can only be used by globals with a name that starts with "llvm." or as arguments to a function with the same naming restriction. llvm-svn: 68420 | |||||
* | Fix two classes of bugs. First: | Chris Lattner | 2009-03-09 | 1 | -3/+3 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | validate an invariant so that the asmparser rejects a bad construct instead of the verifier. Before: llvm-as: assembly parsed, but does not verify as correct! Invalid struct return type! i64 (%struct.Type*, %struct.Type*)* @foo after: llvm-as: t.ll:5:8: functions with 'sret' argument must return void define i64 @foo(%struct.Type* noalias nocapture sret %agg.result, %struct.Type* nocapture byval %t) nounwind { ^ Second, check that void is only used where allowed (in function return types) not in arbitrary places, fixing PR3747 - Crash in llvm-as with void field in struct. We now reject that example with: $ llvm-as t.ll llvm-as: t.ll:1:12: struct element can not have void type %x = type {void} ^ llvm-svn: 66394 | |||||
* | Reject PR3281:accepted03.ll with: | Chris Lattner | 2009-01-05 | 1 | -1/+1 | |
| | | | | | | | | llvm-as: accepted03.ll:1:35: invalid unresolved type up reference declare void @r({ \7, opaque, \10 } %su) ^ llvm-svn: 61725 | |||||
* | Fix PR3281:crash08.ll with this diagnostic: | Chris Lattner | 2009-01-05 | 1 | -1/+2 | |
| | | | | | | | | llvm-as: crash08.ll:3:15: invalid operand type for instruction "qp" = sdiv fp128 0x1, %30 ^ llvm-svn: 61684 |