[llvm-commits] More TargetData mods...

Scott Michel scottm at rushg.aero.org
Fri Feb 2 19:08:27 PST 2007


Revamped the TargetData spec string so that alignments for differently
sized types can be more flexibly specified. Also added support for
vector alignments (32 and 64 bits). The default spec string now looks
like:

  "E-p:64:64:64-a0:0:0-f32:32:32-f64:0:64"
  "-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:0:64"
  "-v64:64:64-v128:128:128"

Although, it should be noted, that this isn't actually parsed (it's the
result of calling TargetData::getRepresentation()).  Internally, a
SmallVector is created with these various and sundry types, sizes and
alignments.

Gratuitously changed "getTypeAlignmentABI" to "getABITypeAlignment"
and "getTypeAlignmentPref" to "getPrefTypeAlignment".

Slimmed down the TargetData code so that there are fewer moving
parts -- if changes have to be made, it's should be more maintainable.


-scooter
-- 
Scott Michel                                      scottm at aero.org
High Performance Hardware Section Manager         310/336-5034
Computer Systems Research Department
The Aerospace Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TargetData.diff
Type: text/x-diff
Size: 50849 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20070202/a5c54773/attachment.diff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm-cfrontend.diff
Type: text/x-diff
Size: 2359 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20070202/a5c54773/attachment-0001.diff>


More information about the llvm-commits mailing list