Commit Graph

50 Commits

Author SHA1 Message Date
Chris Lattner
591d049aa3 update the bytecode format guide for the encoding of inline asm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25622 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 23:31:53 +00:00
Chris Lattner
45f5051149 Update for file-scope inline asm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25563 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:38:09 +00:00
Chris Lattner
767d6ba644 Describe section name encoding
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24322 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-12 01:46:21 +00:00
Chris Lattner
52942b5a32 Minor correction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24220 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-06 07:48:11 +00:00
Chris Lattner
afedcb36aa describe extensions to the .bc format for function/global alignment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24217 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-06 07:20:25 +00:00
Chris Lattner
49b1602a40 enumerate non-standard argument encoding cases, such as alignment info for
allocations


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24205 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-05 22:32:06 +00:00
Chris Lattner
f97fa59313 rearrange some info about the instruction encoding
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24204 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-05 22:20:06 +00:00
John Criswell
1d9be9e395 Updated bytecode version numbers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23972 91177308-0d34-0410-b5e6-96231b3b80d8
2005-10-24 17:10:57 +00:00
John Criswell
611a8d1b8a Fixed a grammar issue.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23966 91177308-0d34-0410-b5e6-96231b3b80d8
2005-10-24 16:20:10 +00:00
Chris Lattner
120bc6da2f minor changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21998 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-14 01:30:15 +00:00
Chris Lattner
a5a4f265f0 user ops are not encoded in the bc format
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21997 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-14 01:26:46 +00:00
Reid Spencer
a5681773ab Document the pseudo-instruction opcodes in opcode range 56-63. These are
used to support things like volatile load/store, tail calls, and calling
conventions without reserving space for the additional information.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21996 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-14 00:06:06 +00:00
Chris Lattner
bad10eebbe document calling convention extensions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21753 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-06 22:57:40 +00:00
Chris Lattner
ced6222bc5 Update to reflect recent change
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17860 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-15 22:54:50 +00:00
Reid Spencer
a4213b2783 Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17623 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-08 09:10:50 +00:00
Reid Spencer
da794e7ab8 Document compressed bytecode details.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17622 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-08 08:55:21 +00:00
Misha Brukman
a36b6e5d49 Replace llvm.org => llvm.cs.uiuc.edu
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17550 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-07 00:59:58 +00:00
Chris Lattner
a1dad814df Add missing 'Instruction Opcodes' bullet to TOC
Update for changes in LLVM 1.4 bytecode format.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17032 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-16 18:03:55 +00:00
Chris Lattner
1dfc8e5257 None of these have actually been implemented yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17027 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-16 00:29:30 +00:00
Nate Begeman
52ca9e4c3d Fix a typo in the bytecode format documentation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16072 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-27 07:59:37 +00:00
Brian Gaeke
715c90ba52 Packed types, brought to you by Brad Jones
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15938 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-20 06:00:58 +00:00
Reid Spencer
43dfdb779b Correct a link, add a TOC entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15909 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 20:17:05 +00:00
Reid Spencer
09daa63597 Provided opcode definitions.
Clarified documentation of symbol tables.
Clarified definition of slot numbers.
Added the http-equiv meta tag for HTML 4.01 strict compliance.
Adjusted line lengths.
Differentiated between "type slot" and "value slot" everywhere.
ispelled it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15908 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 20:06:19 +00:00
Reid Spencer
cf549e1f32 Documented the removal of alignment in version 4 bytecode files (version 3
was released with LLVM 1.3). Alignment of fields can add severe size to
certain kinds of functions (those with lots of long format instructions) so
we decided to do away with alignment altogether in this bc version.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15874 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-17 07:43:43 +00:00
Reid Spencer
8996e55ff9 Technical Corrections (thanks to Robert Mykland):
- Define the "opcode" data type and reference the Instruction.def file
- Clean up the definition of symtab by indicating that it is composed of
  two llists.
- Fix some broken links.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15843 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-17 00:49:03 +00:00
Reid Spencer
5bc74d551a Correct the documentation for the module block header which uses the long
format instead of the short format used in other blocks.

Discrepancy noted by Robert Mykland. Thanks Robert!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15826 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-16 19:24:36 +00:00
Reid Spencer
301fe481c2 Line length <= 80 cols.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15449 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-03 20:57:56 +00:00
Reid Spencer
267660f4ac Fix some indentation (so brg can test commit script).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15448 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-03 20:33:56 +00:00
Reid Spencer
2de2999a02 Fix line lengths.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15446 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-03 20:21:05 +00:00
Reid Spencer
f08561f9a1 Properly wrap some lines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15440 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-03 19:20:18 +00:00
Reid Spencer
9bd2be2dcd Updates to reflect most recent changes to bytecode file format:
* Dependent libraries & target triple
* Short block headers
* 24-bit type slot ids.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15314 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-29 00:13:04 +00:00
Reid Spencer
170a3dc422 Insert a reference to uint32_vbr encoding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14669 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-07 15:02:54 +00:00
Reid Spencer
82c4671f86 An update with corrections to content as well as using a regex style
notation that Chris' suggested to make the specification more compact and
succinct. Added a section to Describe the notation, made the VBR
description its own section, and otherwise generally cleaned things up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14668 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-07 13:34:26 +00:00
Chris Lattner
f4ddea69ba Punctuate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14650 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-06 19:58:54 +00:00
Reid Spencer
51f31e07f6 First draft completed. All sections written.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14633 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-05 22:28:02 +00:00
Reid Spencer
2cc361555b Added sections for Constant Pool, Module Global Info, and Compaction
Tables. Two more sections to go.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14631 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-05 19:04:27 +00:00
Chris Lattner
1cc070c707 Add a missing "terminator" :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14630 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-05 18:05:48 +00:00
Chris Lattner
7c66ab3747 Structures allow only uint
arrays allow int/uint/long/ulong


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14629 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-05 17:55:28 +00:00
Reid Spencer
1ab929cbd5 - Reorganized the document contents
- Provided a "General Layout" section that currently covers just the block
  structure of the bytecode file.
- Wrote the section on the Global Type Pool
- Wrote the section on differences between LLVM file format versions.

Only five sections left to write!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14628 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-05 08:18:07 +00:00
Tanya Lattner
61f1d2b623 Fixed small typo to symtab link.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14308 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-21 23:29:40 +00:00
Reid Spencer
7c76d33c78 Put in a place holder for describing the differences in bytecode format
between LLVM versions. This is just a reminder so I don't forget to
document it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14066 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 07:41:41 +00:00
Reid Spencer
c0a2af1cf3 Add "work in progress" warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14042 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-05 14:18:02 +00:00
Chris Lattner
8dabb50287 Make use of the doc_author and doc_code styles. <tt>'ify llvm names. Minor
other edits


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13760 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 17:44:58 +00:00
Reid Spencer
7aa940de94 Added a bit on slot numbers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13756 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 15:47:57 +00:00
Chris Lattner
2b90565e3d Lots of minor typo fixes, some minor inaccuracies fixed, and some new material.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13715 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-24 05:35:17 +00:00
Chris Lattner
2ca1fd1fd3 Fix a couple of busted li's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13713 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-24 04:55:32 +00:00
Reid Spencer
6f1d699225 Make the file HTML 4.01 (Strict) clean.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13659 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-23 17:12:45 +00:00
Reid Spencer
b39021b8ba Additional content describing variable bit rate encoding, correcting the
definition of the signature block and module block, and adding definitions
of the global type pool and symbol table. More still to come.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13658 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-23 17:05:09 +00:00
Reid Spencer
939290f808 Some additional data added to the bytecode specification.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13626 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-22 05:56:41 +00:00
Reid Spencer
500266187c Added an initial template/overview for documentation of the LLVM Bytecode
file format. This format is being extracted from the source code and the
small recesses of Chris' brain.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13625 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-22 02:28:36 +00:00