OSDN Git Service

2008-03-05 H.J. Lu <hongjiu.lu@intel.com>
authorhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 6 Mar 2008 05:11:52 +0000 (05:11 +0000)
committerhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 6 Mar 2008 05:11:52 +0000 (05:11 +0000)
* config/i386/i386-modes.def: Use 4 byte alignment on DI for
32bit host.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@132966 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/i386/i386-modes.def

index a103de6..110a6dc 100644 (file)
@@ -1,3 +1,8 @@
+2008-03-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386-modes.def: Use 4 byte alignment on DI for
+       32bit host.
+
 2008-03-05  Ian Lance Taylor  <iant@google.com>
 
        * alias.h (alias_set_type): Change from HOST_WIDE_INT to int.
index 105d387..f2f2b4f 100644 (file)
@@ -17,6 +17,10 @@ You should have received a copy of the GNU General Public License
 along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
+/* In 32bit, DI mode uses 32bit registers.  Only 4 byte alignment
+   is needed.  */
+ADJUST_ALIGNMENT (DI, (TARGET_64BIT || TARGET_ALIGN_DOUBLE) ? 8 : 4);
+
 /* The x86_64 ABI specifies both XF and TF modes.
    XFmode is __float80 is IEEE extended; TFmode is __float128
    is IEEE quad.  */