[LLVMbugs] [Bug 14673] New: Mismatchs between Datalayout documentation and code.
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Thu Dec 20 13:08:09 PST 2012
http://llvm.org/bugs/show_bug.cgi?id=14673
Bug #: 14673
Summary: Mismatchs between Datalayout documentation and code.
Product: Documentation
Version: trunk
Platform: All
OS/Version: All
Status: NEW
Severity: enhancement
Priority: P
Component: General docs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: stephen.mcgruer at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 9746
--> http://llvm.org/bugs/attachment.cgi?id=9746
Patch for data layout documentation.
When implementing a new backend for LLVM, I discovered that there seems to be a
number of discrepancies between the default alignments in the documentation for
Datalayout (http://llvm.org/docs/LangRef.html#data-layout) and in the code
(http://llvm.org/docs/doxygen/html/classllvm_1_1DataLayout.html#ab1955291e505fe5073dcac29593dab59
at time of writing). These are:
1. Aggregates are specified in the documentation as defaulting to a0:0:1, but
are set as a0:0:64 by the code.
2. The documentation specifies that "p1:32:32:32" and "p2:16:16:16" are set as
defaults for pointers in address space 1 and 2, but this doesn't seem to be
backed by the code (which has only a single reference to
"setPointerAlignment(0, 8, 8, 8)", i.e. the "p0:64:64:64" case.)
3. The documentation specifies that "s0:64:64" is set as the default for the
stack, but this doesn't seem to be backed by the code.
4. Two additional float size/alignments are specified in the code,
corresponding to "f16:16:16" and "f128:128:128".
Dumping the data layout in DataLayout.init() before the target-specific string
is parsed shows these differences:
"DATA LAYOUT:
E-p:64:64:64-S0-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f16:16:16-f32:32:32-f64:64:64-f128:128:128-v64:64:64-v128:128:128-a0:0:64"
I'm unsure if it would be considered that the documentation or the code would
be incorrect, but I have attached a documentation patch for the differences,
since that is far simpler to correct.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list