changeset 414:0a4416b34d4a

align fix.
author kono
date Fri, 22 Oct 2004 22:52:01 +0900
parents d4dc6d99ffdb
children bdf900926f32
files Changes mc-code-arm.c
diffstat 2 files changed, 8 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/Changes	Wed Oct 20 00:32:36 2004 +0900
+++ b/Changes	Fri Oct 22 22:52:01 2004 +0900
@@ -6172,3 +6172,5 @@
 emit_pop_free する時に、その一部がRET_LREGと重なっていて、
 一緒にfreeされてしまう。そうすると、次のemit_popで、上書きされてしまう。
 なので、RET_LREGにしないで、lmove してしまうのが良い。
+
+align がおかしい
--- a/mc-code-arm.c	Wed Oct 20 00:32:36 2004 +0900
+++ b/mc-code-arm.c	Fri Oct 22 22:52:01 2004 +0900
@@ -3453,7 +3453,7 @@
 align(int t)
 {
     if (t!=CHAR) {
-	if (data_alignment & 1)
+//	if (data_alignment & 1)
 	    printf("\t.align 2\n");
 	data_alignment = 0;
     }
@@ -3526,7 +3526,8 @@
 emit_int(int d)
 {
     data_mode(0);
-    printf("\t.long %d\n",d);
+    align(0);
+    printf("\t.word %d\n",d);
 }
 
 extern void
@@ -3572,16 +3573,16 @@
 {
     data_mode(0);
     if (offset) 
-	printf("\t.long %s+%d\n",s,offset);
+	printf("\t.word %s+%d\n",s,offset);
     else
-	printf("\t.long %s\n",s);
+	printf("\t.word %s\n",s);
 }
 
 extern void
 emit_label(int labelno)
 {
     data_mode(0);
-    printf("\t.long .L%d\n",labelno);
+    printf("\t.word .L%d\n",labelno);
 }
 
 extern void