[llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2007-04-29 Thread Anton Korobeynikov


Changes in directory llvm/docs:

BytecodeFormat.html updated: 1.71 - 1.72
LangRef.html updated: 1.241 - 1.242
---
Log message:

Implement protected visibility. This partly implements PR1363: 
http://llvm.org/PR1363 . Linker 
should be taught to deal with protected symbols.


---
Diffs of the changes:  (+11 -4)

 BytecodeFormat.html |6 +++---
 LangRef.html|9 -
 2 files changed, 11 insertions(+), 4 deletions(-)


Index: llvm/docs/BytecodeFormat.html
diff -u llvm/docs/BytecodeFormat.html:1.71 llvm/docs/BytecodeFormat.html:1.72
--- llvm/docs/BytecodeFormat.html:1.71  Sat Apr 28 08:44:59 2007
+++ llvm/docs/BytecodeFormat.html   Sun Apr 29 13:35:00 2007
@@ -1044,7 +1044,7 @@
 /tr
 tr
   tda href=#bitbit(10-12)/a/td
-  td class=td_leftVisibility style: 0=Default, 1=Hidden./td
+  td class=td_leftVisibility style: 0=Default, 1=Hidden, 
2=Protected./td
 /tr
 tr
   tda href=#bitbit(13-31)/a/td
@@ -1506,7 +1506,7 @@
 /tr
 tr
   tda href=#bitbit(16-18)/a/td
-  td class=td_leftVisibility style: 0=Default, 1=Hidden./td
+  td class=td_leftVisibility style: 0=Default, 1=Hidden, 
2=Protected./td
 /tr
 tr
   tda href=#bitbit(19-31)/a/td
@@ -2152,7 +2152,7 @@
 a href=mailto:[EMAIL PROTECTED]Reid Spencer/a and a
  href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
 a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-Last modified: $Date: 2007/04/28 13:44:59 $
+Last modified: $Date: 2007/04/29 18:35:00 $
 /address
 /body
 /html


Index: llvm/docs/LangRef.html
diff -u llvm/docs/LangRef.html:1.241 llvm/docs/LangRef.html:1.242
--- llvm/docs/LangRef.html:1.241Sun Apr 29 13:02:48 2007
+++ llvm/docs/LangRef.html  Sun Apr 29 13:35:00 2007
@@ -591,6 +591,13 @@
 directly.
   /dd
 
+  dtbttprotected/tt - Protected style/b:/dt
+
+  ddOn ELF, protected visibility indicates that the symbol will be placed in
+  the dynamic symbol table, but that references within the defining module will
+  bind to the local symbol. That is, the symbol cannot be overridden by another
+  module.
+  /dd
 /dl
 
 /div
@@ -4749,7 +4756,7 @@
 
   a href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
   a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-  Last modified: $Date: 2007/04/29 18:02:48 $
+  Last modified: $Date: 2007/04/29 18:35:00 $
 /address
 /body
 /html



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2007-04-28 Thread Anton Korobeynikov


Changes in directory llvm/docs:

BytecodeFormat.html updated: 1.70 - 1.71
LangRef.html updated: 1.238 - 1.239
---
Log message:

Implement review feedback. Aliasees can be either GlobalValue's or 
bitcasts of them.


---
Diffs of the changes:  (+11 -10)

 BytecodeFormat.html |   16 
 LangRef.html|5 +++--
 2 files changed, 11 insertions(+), 10 deletions(-)


Index: llvm/docs/BytecodeFormat.html
diff -u llvm/docs/BytecodeFormat.html:1.70 llvm/docs/BytecodeFormat.html:1.71
--- llvm/docs/BytecodeFormat.html:1.70  Wed Apr 25 09:27:10 2007
+++ llvm/docs/BytecodeFormat.html   Sat Apr 28 08:44:59 2007
@@ -1212,14 +1212,18 @@
   linkage, 2 - Weak linkage./td
 /tr
 tr
-  tda href=#bitbit(2-31)/a/td
+  tda href=#bitbit(2)/a/td
+  td class=td_left0 - Aliasee is global value. 1 - Aliasee is constant
+  expression (bitcast of global value)/td
+/tr
+tr
+  tda href=#bitbit(3-31)/a/td
   td class=td_leftType slot number of type for the alias itself./td
 /tr
   /tbody
 /table
 
-  pThe next two a href=#uint32_vbruint32_vbr's/a describes the
-  aliasee. /p
+  pThe next a href=#uint32_vbruint32_vbr/a describes the aliasee. /p
 
 table
   tbody
@@ -1229,10 +1233,6 @@
 /tr
 tr
   tda href=#uint32_vbruint32_vbr/a/td
-  td class=td_leftType slot number of type for the aliasee./td
-/tr
-tr
-  tda href=#uint32_vbruint32_vbr/a/td
   td class=td_leftSlot number of the aliasee./td
 /tr
   /tbody
@@ -2152,7 +2152,7 @@
 a href=mailto:[EMAIL PROTECTED]Reid Spencer/a and a
  href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
 a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-Last modified: $Date: 2007/04/25 14:27:10 $
+Last modified: $Date: 2007/04/28 13:44:59 $
 /address
 /body
 /html


Index: llvm/docs/LangRef.html
diff -u llvm/docs/LangRef.html:1.238 llvm/docs/LangRef.html:1.239
--- llvm/docs/LangRef.html:1.238Wed Apr 25 09:27:10 2007
+++ llvm/docs/LangRef.html  Sat Apr 28 08:44:59 2007
@@ -24,6 +24,7 @@
   lia href=#callingconvCalling Conventions/a/li
   lia href=#globalvarsGlobal Variables/a/li
   lia href=#functionstructureFunctions/a/li
+  lia href=aliasstructureAliases/a
   lia href=#paramattrsParameter Attributes/a/li
   lia href=#moduleasmModule-Level Inline Assembly/a/li
   lia href=#datalayoutData Layout/a/li
@@ -705,7 +706,7 @@
 /div
 div class=doc_text
   pAliases act as second name for the aliasee value (which can be either
-  function or global variable). Aliases may have an
+  function or global variable or bitcast of global value). Aliases may have an
   optional a href=#linkagelinkage type/a, and an
   optional a href=#visibilityvisibility style/a./p
 
@@ -4749,7 +4750,7 @@
 
   a href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
   a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-  Last modified: $Date: 2007/04/25 14:27:10 $
+  Last modified: $Date: 2007/04/28 13:44:59 $
 /address
 /body
 /html



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


Re: [llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2007-04-28 Thread Chris Lattner
 Index: llvm/docs/LangRef.html
 diff -u llvm/docs/LangRef.html:1.238 llvm/docs/LangRef.html:1.239
 --- llvm/docs/LangRef.html:1.238  Wed Apr 25 09:27:10 2007
 +++ llvm/docs/LangRef.htmlSat Apr 28 08:44:59 2007
 @@ -24,6 +24,7 @@
lia href=#callingconvCalling Conventions/a/li
lia href=#globalvarsGlobal Variables/a/li
lia href=#functionstructureFunctions/a/li
 +  lia href=aliasstructureAliases/a

This needs a #.

Overall, very nice job Anton!

-Chris


___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2007-04-25 Thread Anton Korobeynikov


Changes in directory llvm/docs:

BytecodeFormat.html updated: 1.69 - 1.70
LangRef.html updated: 1.237 - 1.238
---
Log message:

Implement aliases. This fixes PR1017: http://llvm.org/PR1017  and it's 
dependent bugs. CFE part 
will follow.


---
Diffs of the changes:  (+91 -15)

 BytecodeFormat.html |   69 ++--
 LangRef.html|   37 +--
 2 files changed, 91 insertions(+), 15 deletions(-)


Index: llvm/docs/BytecodeFormat.html
diff -u llvm/docs/BytecodeFormat.html:1.69 llvm/docs/BytecodeFormat.html:1.70
--- llvm/docs/BytecodeFormat.html:1.69  Sat Apr 21 03:16:24 2007
+++ llvm/docs/BytecodeFormat.html   Wed Apr 25 09:27:10 2007
@@ -943,11 +943,11 @@
 target triple specified, i.e. a platform-independent module)./td
 /tr
 tr
- tda href=#stringstring/a/td
-  td class=td_leftThe data layout string describing the endianness,
-pointer size, and type alignments for which the module was written 
-(blank means no data layout specified, i.e. a platform-independent 
-module)./td
+  tda href=#stringstring/a/td
+  td class=td_leftThe data layout string describing the endianness,
+pointer size, and type alignments for which the module was written 
+(blank means no data layout specified, i.e. a platform-independent 
+module)./td
 /tr
 tr
   tda href=#llistllist/a(a href=#stringstring/a)/td
@@ -959,6 +959,11 @@
   tda href=#stringstring/a/td
   td class=td_leftThe inline asm block for this module./td
 /tr
+tr
+  tda href=#zlistzlist/a(a href=#aliasalias/a)/td
+  td class=td_leftA zero terminated list of aliases occurring in the
+  module./td
+/tr
   /tbody
 /table
 /div
@@ -1123,7 +1128,7 @@
   tda href=#bitbit(5-30)/a/td
   td class=td_leftType slot number of type for the function./td
 /tr
-  tr
+tr
   tda href=#bitbit(31)/a/td
   td class=td_leftIndicates whether an extension word follows./td
 /tr
@@ -1186,6 +1191,56 @@
 /div
 
 !-- ___ 
--
+div class=doc_subsubsectiona name=aliasAlias Field/a
+/div
+div class=doc_text
+pAliases are written using 3 a href=#uint32_vbruint32_vbr/a
+that encode information about alias itself and aliasee./p
+
+pThe table below provides the bit layout of
+the first a href=#uint32_vbruint32_vbr/a which describes alias 
itself./p
+
+table
+  tbody
+tr
+  thbType/b/th
+  th class=td_leftbDescription/b/th
+/tr
+tr
+  tda href=#bitbit(0-1)/a/td
+  td class=td_leftAlias linkage. 0 - External linkage, 1 - Internal
+  linkage, 2 - Weak linkage./td
+/tr
+tr
+  tda href=#bitbit(2-31)/a/td
+  td class=td_leftType slot number of type for the alias itself./td
+/tr
+  /tbody
+/table
+
+  pThe next two a href=#uint32_vbruint32_vbr's/a describes the
+  aliasee. /p
+
+table
+  tbody
+tr
+  thbType/b/th
+  th class=td_leftbDescription/b/th
+/tr
+tr
+  tda href=#uint32_vbruint32_vbr/a/td
+  td class=td_leftType slot number of type for the aliasee./td
+/tr
+tr
+  tda href=#uint32_vbruint32_vbr/a/td
+  td class=td_leftSlot number of the aliasee./td
+/tr
+  /tbody
+/table
+
+/div
+
+!-- ___ 
--
 div class=doc_subsectiona name=constantpoolConstant Pool/a /div
 div class=doc_text
 pA constant pool defines as set of constant values. There are
@@ -2097,7 +2152,7 @@
 a href=mailto:[EMAIL PROTECTED]Reid Spencer/a and a
  href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
 a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-Last modified: $Date: 2007/04/21 08:16:24 $
+Last modified: $Date: 2007/04/25 14:27:10 $
 /address
 /body
 /html


Index: llvm/docs/LangRef.html
diff -u llvm/docs/LangRef.html:1.237 llvm/docs/LangRef.html:1.238
--- llvm/docs/LangRef.html:1.237Sun Apr 22 09:56:37 2007
+++ llvm/docs/LangRef.html  Wed Apr 25 09:27:10 2007
@@ -498,7 +498,8 @@
 pIt is illegal for a function ideclaration/i
 to have any linkage type other than externally visible, ttdllimport/tt,
 or ttextern_weak/tt./p
-
+pAliases can have only ttexternal/tt, ttinternal/tt and ttweak/tt
+linkages.
 /div
 
 !-- === 
--
@@ -602,12 +603,11 @@
 
 pGlobal variables define regions of memory allocated at compilation time
 instead of run-time.  Global variables may optionally be initialized, may have
-an explicit section to be placed in, and may
-have an optional explicit alignment specified.  A variable may be defined as
-thread_local, which means that it will not be shared by threads (each thread
-will have a separated copy of the variable).
-A variable may be defined as a global constant, which indicates that the
-contents of the variable will 

Re: [llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2007-04-25 Thread Chris Lattner
On Apr 25, 2007, at 7:28 AM, Anton Korobeynikov wrote:
 --- llvm/docs/LangRef.html:1.237  Sun Apr 22 09:56:37 2007
 +++ llvm/docs/LangRef.htmlWed Apr 25 09:27:10 2007
 @@ -498,7 +498,8 @@
  pIt is illegal for a function ideclaration/i
  to have any linkage type other than externally visible,  
 ttdllimport/tt,
  or ttextern_weak/tt./p
 -
 +pAliases can have only ttexternal/tt, ttinternal/tt and  
 ttweak/tt
 +linkages.
  /div

What do these mean?  What semantics does the linker have?  Why isn't  
it always valid to RAUW an internal alias, then delete it?

 +!--  
 == 
 = --
 +div class=doc_subsection
 +  a name=aliasstructureAliases/a
 +/div

Should this section go in the TOC at the start of the file?

 +div class=doc_text
 +  pAliases act as second name for the aliasee value (which can  
 be either
 +  function or global variable). Aliases may have an
 +  optional a href=#linkagelinkage type/a, and an
 +  optional a href=#visibilityvisibility style/a./p

I suggest mentioning that aliases are only supported on some  
targets.  Is there any way to emulate them on targets that don't  
support them?

Also, can you please add CBE support for them?

-Chris


___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2007-04-21 Thread Christopher Lamb


Changes in directory llvm/docs:

BytecodeFormat.html updated: 1.68 - 1.69
LangRef.html updated: 1.234 - 1.235
---
Log message:


add support for alignment attributes on load/store instructions


---
Diffs of the changes:  (+8 -8)

 BytecodeFormat.html |8 
 LangRef.html|8 
 2 files changed, 8 insertions(+), 8 deletions(-)


Index: llvm/docs/BytecodeFormat.html
diff -u llvm/docs/BytecodeFormat.html:1.68 llvm/docs/BytecodeFormat.html:1.69
--- llvm/docs/BytecodeFormat.html:1.68  Thu Apr 12 14:52:46 2007
+++ llvm/docs/BytecodeFormat.html   Sat Apr 21 03:16:24 2007
@@ -1587,15 +1587,15 @@
   trtdCall+FastCC+TailCall/tdtd59/tdtd5/tdtd1.5/td/tr
   trtdCall+FastCC/tdtd60/tdtd5/tdtd1.5/td/tr
   trtdCall+CCC+TailCall/tdtd61/tdtd5/tdtd1.5/td/tr
-  trtdLoad+Volatile/tdtd62/tdtd3/tdtd1.3/td/tr
-  trtdStore+Volatile/tdtd63/tdtd3/tdtd1.3/td/tr
+  trtdLoad+Attributes/tdtd62/tdtd7/tdtd2.0/td/tr
+  trtdStore+Attributes/tdtd63/tdtd7/tdtd2.0/td/tr
 /tbody
   /table
 
 pba name=pi_note* Note: /a/b
 These aren't really opcodes from an LLVM language perspective. They encode
 information into other opcodes without reserving space for that information. 
-For example, opcode=63 is a Volatile Store. The opcode for this
+For example, opcode=63 is an Attributed Store. The opcode for this
 instruction is 25 (Store) but we encode it as 63 to indicate that is a Volatile
 Store. The same is done for the calling conventions and tail calls.
 In each of these entries in range 56-63, the opcode is documented as the base
@@ -2097,7 +2097,7 @@
 a href=mailto:[EMAIL PROTECTED]Reid Spencer/a and a
  href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
 a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-Last modified: $Date: 2007/04/12 19:52:46 $
+Last modified: $Date: 2007/04/21 08:16:24 $
 /address
 /body
 /html


Index: llvm/docs/LangRef.html
diff -u llvm/docs/LangRef.html:1.234 llvm/docs/LangRef.html:1.235
--- llvm/docs/LangRef.html:1.234Thu Apr 12 15:34:36 2007
+++ llvm/docs/LangRef.html  Sat Apr 21 03:16:25 2007
@@ -2609,7 +2609,7 @@
 Instruction/a /div
 div class=doc_text
 h5Syntax:/h5
-pre  lt;resultgt; = load lt;tygt;* lt;pointergt;br  lt;resultgt; = 
volatile load lt;tygt;* lt;pointergt;br/pre
+pre  lt;resultgt; = load lt;tygt;* lt;pointergt;[, align 
lt;alignmentgt;]br  lt;resultgt; = volatile load lt;tygt;* 
lt;pointergt;[, align lt;alignmentgt;]br/pre
 h5Overview:/h5
 pThe 'ttload/tt' instruction is used to read from memory./p
 h5Arguments:/h5
@@ -2634,8 +2634,8 @@
 Instruction/a /div
 div class=doc_text
 h5Syntax:/h5
-pre  store lt;tygt; lt;valuegt;, lt;tygt;* lt;pointergt; 
  i; yields {void}/i
-  volatile store lt;tygt; lt;valuegt;, lt;tygt;* lt;pointergt; 
  i; yields {void}/i
+pre  store lt;tygt; lt;valuegt;, lt;tygt;* lt;pointergt;[, align 
lt;alignmentgt;]   i; yields {void}/i
+  volatile store lt;tygt; lt;valuegt;, lt;tygt;* lt;pointergt;[, align 
lt;alignmentgt;]  i; yields {void}/i
 /pre
 h5Overview:/h5
 pThe 'ttstore/tt' instruction is used to write to memory./p
@@ -4732,7 +4732,7 @@
 
   a href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
   a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-  Last modified: $Date: 2007/04/12 20:34:36 $
+  Last modified: $Date: 2007/04/21 08:16:25 $
 /address
 /body
 /html



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


Re: [llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2007-01-15 Thread Chris Lattner
Nice work Anton, some comments below:

 @@ -1082,7 +1081,11 @@
td class=td_leftIf this bit is set, a SectionID follows  
 this vbr./td
  /tr
  tr
 -  tda href=#bitbit(10-31)/a/td
 +  tda href=#bitbit(10-12)/a/td
 +  td class=td_leftVisibility style: 0=Default, 1=Hidden./td
 +/tr
 +tr
 +  tda href=#bitbit(13-31)/a/td
td class=td_leftCurrently unassigned./td
  /tr
/tbody

Why reserve 3 bits for visibility?

 +!--  
 __ 
 _ --
 +div class=doc_subsubsectiona  
 name=funclinkage_and_visibilityLinkage and
 +visibility word/a
 +/div
 +div class=doc_text
 +
 +table
 +  tbody
 +tr
 +  thbType/b/th
 +  th class=td_leftbField Description/b/th
 +/tr
 +tr
 +  tda href=#bitbit(0-15)/a/td
 +  td class=td_leftThe linkage type of the function:  
 0=External, 1=Weak,
 +2=Appending, 3=Internal, 4=LinkOnce, 5=DllImport,  
 6=DllExportsup1/sup/td
 +/tr
 +tr
 +  tda href=#bitbit(16-31)/a/td
 +  td class=td_leftVisibility style: 0=Default, 1=Hidden./td

Why reserve 16 bits for visibility? :)


Also, please add some info to LangRef.html about visibility.  Thanks!

-Chris
___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2007-01-12 Thread Anton Korobeynikov


Changes in directory llvm/docs:

BytecodeFormat.html updated: 1.58 - 1.59
LangRef.html updated: 1.193 - 1.194
---
Log message:

* PIC codegen for X86/Linux has been implemented
* PIC-aware internal structures in X86 Codegen have been refactored
* Visibility (default/weak) has been added
* Docs fixes (external weak linkage, visibility, formatting)


---
Diffs of the changes:  (+57 -25)

 BytecodeFormat.html |   48 +++-
 LangRef.html|   34 ++
 2 files changed, 57 insertions(+), 25 deletions(-)


Index: llvm/docs/BytecodeFormat.html
diff -u llvm/docs/BytecodeFormat.html:1.58 llvm/docs/BytecodeFormat.html:1.59
--- llvm/docs/BytecodeFormat.html:1.58  Fri Dec  8 11:50:05 2006
+++ llvm/docs/BytecodeFormat.html   Fri Jan 12 13:20:46 2007
@@ -743,7 +743,6 @@
   li#3: LLVM 1.3/li
   li#4: LLVM 1.3.x (not released)/li
   li#5: LLVM 1.4 and newer/li
-  /li
 /ul
 pNote that we plan to eventually expand the target description
 capabilities
@@ -1082,7 +1081,11 @@
   td class=td_leftIf this bit is set, a SectionID follows this 
vbr./td
 /tr
 tr
-  tda href=#bitbit(10-31)/a/td
+  tda href=#bitbit(10-12)/a/td
+  td class=td_leftVisibility style: 0=Default, 1=Hidden./td
+/tr
+tr
+  tda href=#bitbit(13-31)/a/td
   td class=td_leftCurrently unassigned./td
 /tr
   /tbody
@@ -1337,7 +1340,7 @@
 /div
 
 !-- ___ 
--
-div class=doc_subsubsectionUndef Entries/a/div
+div class=doc_subsubsectionUndef Entries/div
 
 div class=doc_text
 pWhen the number of operands to the constant is one, we have an 'undef' value
@@ -1345,7 +1348,7 @@
 /div
 
 !-- ___ 
--
-div class=doc_subsubsectionInline Assembler Entries/a/div
+div class=doc_subsubsectionInline Assembler Entries/div
 
 div class=doc_text
 pInline Assembler entries are stored in the constant pool, though they are 
not
@@ -1369,7 +1372,7 @@
 /tr
 tr
   tda href=#uint32_vbruint32_vbr/a/td
-  td class=td_leftFlags/sup/td
+  td class=td_leftFlags/td
 /tr
   /tbody
 /table
@@ -1380,7 +1383,7 @@
 /div
 
 !-- ___ 
--
-div class=doc_subsubsectionConstant Expression Entries/a/div
+div class=doc_subsubsectionConstant Expression Entries/div
 
 div class=doc_text
 
@@ -1436,8 +1439,8 @@
 /tr
 tr
   tda href=#uint32_vbruint32_vbr/a/td
-  td class=td_leftThe linkage type of the function: 0=External, 1=Weak,
-2=Appending, 3=Internal, 4=LinkOnce, 5=DllImport, 6=DllExportsup1/sup/td
+  td class=td_lefta href=#funclinkage_and_visibilityThe linkage and
+  visibility/a style field/td
 /tr
 tr
   tda href=#blockblock/a/td
@@ -1470,7 +1473,34 @@
 be written. Compaction tables are only written if they will actually
 save bytecode space. If not, then a regular constant pool is written./li
 /ol
+
+!-- ___ 
--
+div class=doc_subsubsectiona name=funclinkage_and_visibilityLinkage and
+visibility word/a
+/div
+div class=doc_text
+
+table
+  tbody
+tr
+  thbType/b/th
+  th class=td_leftbField Description/b/th
+/tr
+tr
+  tda href=#bitbit(0-15)/a/td
+  td class=td_leftThe linkage type of the function: 0=External, 1=Weak,
+2=Appending, 3=Internal, 4=LinkOnce, 5=DllImport, 6=DllExportsup1/sup/td
+/tr
+tr
+  tda href=#bitbit(16-31)/a/td
+  td class=td_leftVisibility style: 0=Default, 1=Hidden./td
+/tr
+  /tbody
+/table
+
+/div
 /div
+
 !-- ___ 
--
 div class=doc_subsectiona name=compactiontableCompaction Table/a
 /div
@@ -2183,7 +2213,7 @@
 a href=mailto:[EMAIL PROTECTED]Reid Spencer/a and a
  href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
 a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-Last modified: $Date: 2006/12/08 17:50:05 $
+Last modified: $Date: 2007/01/12 19:20:46 $
 /address
 /body
 /html


Index: llvm/docs/LangRef.html
diff -u llvm/docs/LangRef.html:1.193 llvm/docs/LangRef.html:1.194
--- llvm/docs/LangRef.html:1.193Fri Jan 12 09:46:11 2007
+++ llvm/docs/LangRef.html  Fri Jan 12 13:20:46 2007
@@ -275,7 +275,7 @@
   For example, %foo, %DivisionByZero, %a.really.long.identifier.  The actual
   regular expression used is 'tt%[a-zA-Z$._][a-zA-Z$._0-9]*/tt'.
   Identifiers which require other characters in their names can be surrounded
-  with quotes.  In this way, anything except a tt/tt character can be used
+  with quotes.  In this way, anything except a ttquot;/tt character can 
be used
   in a name./li
 
   liUnnamed values are represented as an unsigned numeric value with a '%'
@@ -452,6 +452,13 @@
   sections with identical names when .o files are linked.
   /dd
 
+  dtttba 

[llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2006-12-08 Thread Andrew Lenharth


Changes in directory llvm/docs:

BytecodeFormat.html updated: 1.56 - 1.57
LangRef.html updated: 1.178 - 1.179
---
Log message:

Packed Structure Definitions (docs)

---
Diffs of the changes:  (+39 -2)

 BytecodeFormat.html |6 +-
 LangRef.html|   35 ++-
 2 files changed, 39 insertions(+), 2 deletions(-)


Index: llvm/docs/BytecodeFormat.html
diff -u llvm/docs/BytecodeFormat.html:1.56 llvm/docs/BytecodeFormat.html:1.57
--- llvm/docs/BytecodeFormat.html:1.56  Wed Nov  8 14:07:40 2006
+++ llvm/docs/BytecodeFormat.html   Fri Dec  8 11:13:00 2006
@@ -862,6 +862,10 @@
   td class=td_leftType ID for structure types (14)/td
 /tr
 tr
+  tda href=#uint32_vbruint32_vbr/a/td
+  td class=td_leftValue 0 if a normal structure, 1 if a packed 
structure/td
+/tr
+tr
   tda href=#zlistzlist/a(a href=#uint24_vbruint24_vbr/a)/td
   td class=td_leftSlot number of each of the element's fields./td
 /tr
@@ -2166,7 +2170,7 @@
 a href=mailto:[EMAIL PROTECTED]Reid Spencer/a and a
  href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
 a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-Last modified: $Date: 2006/11/08 20:07:40 $
+Last modified: $Date: 2006/12/08 17:13:00 $
 /address
 /body
 /html


Index: llvm/docs/LangRef.html
diff -u llvm/docs/LangRef.html:1.178 llvm/docs/LangRef.html:1.179
--- llvm/docs/LangRef.html:1.178Wed Dec  6 01:08:07 2006
+++ llvm/docs/LangRef.html  Fri Dec  8 11:13:00 2006
@@ -40,6 +40,7 @@
   lia href=#t_functionFunction Type/a/li
   lia href=#t_pointerPointer Type/a/li
   lia href=#t_structStructure Type/a/li
+  lia href=#t_pstructPacked Structure Type/a/li
   lia href=#t_packedPacked Type/a/li
   lia href=#t_opaqueOpaque Type/a/li
 /ol
@@ -933,6 +934,38 @@
 /div
 
 !-- ___ 
--
+div class=doc_subsubsection a name=t_pstructPacked Structure Type/a
+/div
+div class=doc_text
+h5Overview:/h5
+pThe packed structure type is used to represent a collection of data members
+together in memory.  There is no padding between fields.  Further, the 
alignment
+of a packed structure is 1 byte.  The elements of a packed structure may
+be any type that has a size./p
+pStructures are accessed using 'tta href=#i_loadload/a/tt
+and 'tta href=#i_storestore/a/tt' by getting a pointer to a
+field with the 'tta href=#i_getelementptrgetelementptr/a/tt'
+instruction./p
+h5Syntax:/h5
+pre  lt; { lt;type listgt; } gt; br/pre
+h5Examples:/h5
+table class=layout
+  tr class=layout
+td class=left
+  tt lt; { int, int, int } gt; /ttbr/
+  tt lt; { float, int (int) * } gt; /ttbr/
+/td
+td class=left
+  a triple of three ttint/tt valuesbr/
+  A pair, where the first element is a ttfloat/tt and the second 
element 
+  is a a href=#t_pointerpointer/a to a a 
href=#t_functionfunction/a 
+  that takes an ttint/tt, returning an ttint/tt.br/
+/td
+  /tr
+/table
+/div
+
+!-- ___ 
--
 div class=doc_subsubsection a name=t_pointerPointer Type/a /div
 div class=doc_text
 h5Overview:/h5
@@ -4435,7 +4468,7 @@
 
   a href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
   a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-  Last modified: $Date: 2006/12/06 07:08:07 $
+  Last modified: $Date: 2006/12/08 17:13:00 $
 /address
 /body
 /html



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/docs/BytecodeFormat.html LangRef.html

2006-09-14 Thread Anton Korobeynikov


Changes in directory llvm/docs:

BytecodeFormat.html updated: 1.52 - 1.53
LangRef.html updated: 1.156 - 1.157
---
Log message:

Adding dllimport, dllexport and external weak linkage types.
DLL* linkages got full (I hope) codegeneration support in C  both x86 
assembler backends.
External weak linkage added for future use, we don't provide any 
codegeneration, etc. support for it.


---
Diffs of the changes:  (+46 -8)

 BytecodeFormat.html |   23 ---
 LangRef.html|   31 ++-
 2 files changed, 46 insertions(+), 8 deletions(-)


Index: llvm/docs/BytecodeFormat.html
diff -u llvm/docs/BytecodeFormat.html:1.52 llvm/docs/BytecodeFormat.html:1.53
--- llvm/docs/BytecodeFormat.html:1.52  Thu Apr 20 00:05:12 2006
+++ llvm/docs/BytecodeFormat.html   Thu Sep 14 13:23:26 2006
@@ -1025,7 +1025,8 @@
 tr
   tda href=#bitbit(2-4)/a/td
   td class=td_leftLinkage type: 0=External, 1=Weak,
-2=Appending, 3=Internal, 4=LinkOnce/td
+2=Appending, 3=Internal, 4=LinkOnce, 5=DllImport, 
+6=DllExport, 7=ExternWeak/td
 /tr
 tr
   tda href=#bitbit(5-31)/a/td
@@ -1136,13 +1137,16 @@
   tda href=#bitbit(4)/a/td
   td class=td_leftIf this bit is set to 1, the indicated function is
   external, and there is no a href=#functiondefsFunction Definiton
-  Block/a in the bytecode file for the function./td
+  Block/a in the bytecode file for the function. If the function is
+  external and has ttdllimport or extern_weak/tt linkage additional
+  field in the extension word is used to indicate the actual linkage
+  type./td
 /tr
 tr
   tda href=#bitbit(5-30)/a/td
   td class=td_leftType slot number of type for the function./td
 /tr
-tr
+  tr
   tda href=#bitbit(31)/a/td
   td class=td_leftIndicates whether an extension word follows./td
 /tr
@@ -1171,7 +1175,12 @@
   td class=td_leftIf this bit is set, a SectionID follows this 
vbr./td
 /tr
 tr
-  tda href=#bitbit(11-31)/a/td
+  tda href=#bitbit(11-12)/a/td
+  td class=td_leftLinkage type for external functions. 0 - External
+linkage, 1 - DLLImport linkage, 2 - External weak linkage./td
+/tr
+tr
+  tda href=#bitbit(13-31)/a/td
   td class=td_leftCurrently unassigned./td
 /tr
   /tbody
@@ -1410,8 +1419,8 @@
 /tr
 tr
   tda href=#uint32_vbruint32_vbr/a/td
-  td class=td_leftThe linkage type of the function: 0=External,
-1=Weak, 2=Appending, 3=Internal, 4=LinkOncesup1/sup/td
+  td class=td_leftThe linkage type of the function: 0=External, 1=Weak,
+2=Appending, 3=Internal, 4=LinkOnce, 5=DllImport, 6=DllExportsup1/sup/td
 /tr
 tr
   tda href=#blockblock/a/td
@@ -2148,7 +2157,7 @@
 a href=mailto:[EMAIL PROTECTED]Reid Spencer/a and a
  href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
 a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-Last modified: $Date: 2006/04/20 05:05:12 $
+Last modified: $Date: 2006/09/14 18:23:26 $
 /address
 /body
 /html


Index: llvm/docs/LangRef.html
diff -u llvm/docs/LangRef.html:1.156 llvm/docs/LangRef.html:1.157
--- llvm/docs/LangRef.html:1.156Fri Sep  8 01:34:02 2006
+++ llvm/docs/LangRef.html  Thu Sep 14 13:23:26 2006
@@ -439,6 +439,35 @@
   visible, meaning that it participates in linkage and can be used to resolve
   external symbol references.
   /dd
+
+  dtttba name=linkage_externweakextern_weak/a/b/tt: /dt
+
+  ddttextern_weak/tt TBD
+  /dd
+
+  p
+  The next two types of linkage are targeted for Microsoft Windows platform
+  only. They are designed to support importing (exporting) symbols from (to)
+  DLLs.
+  /p
+
+  dtttba name=linkage_dllimportdllimport/a/b/tt: /dt
+
+  ddttdllimport/tt linkage causes the compiler to reference a function
+or variable via a global pointer to a pointer that is set up by the DLL
+exporting the symbol. On Microsoft Windows targets, the pointer name is
+formed by combining code_imp__/code and the function or variable name.
+  /dd
+
+  dtttba name=linkage_dllexportdllexport/a/b/tt: /dt
+
+  ddttdllexport/tt linkage causes the compiler to provide a global
+pointer to a pointer in a DLL, so that it can be referenced with the
+ttdllimport/tt attribute. On Microsoft Windows targets, the pointer
+name is formed by combining code_imp__/code and the function or 
variable
+name.
+  /dd
+
 /dl
 
 pa name=linkage_externalFor example, since the tt.LC0/tt
@@ -3880,7 +3909,7 @@
 
   a href=mailto:[EMAIL PROTECTED]Chris Lattner/abr
   a href=http://llvm.org;The LLVM Compiler Infrastructure/abr
-  Last modified: $Date: 2006/09/08 06:34:02 $
+  Last modified: $Date: 2006/09/14 18:23:26 $
 /address
 /body
 /html



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits