Mercurial > hg > CbC > old > device
comparison mc-code-arm.c @ 414:0a4416b34d4a
align fix.
author | kono |
---|---|
date | Fri, 22 Oct 2004 22:52:01 +0900 |
parents | d4dc6d99ffdb |
children | bdf900926f32 |
comparison
equal
deleted
inserted
replaced
413:d4dc6d99ffdb | 414:0a4416b34d4a |
---|---|
3451 void | 3451 void |
3452 | 3452 |
3453 align(int t) | 3453 align(int t) |
3454 { | 3454 { |
3455 if (t!=CHAR) { | 3455 if (t!=CHAR) { |
3456 if (data_alignment & 1) | 3456 // if (data_alignment & 1) |
3457 printf("\t.align 2\n"); | 3457 printf("\t.align 2\n"); |
3458 data_alignment = 0; | 3458 data_alignment = 0; |
3459 } | 3459 } |
3460 } | 3460 } |
3461 | 3461 |
3524 | 3524 |
3525 extern void | 3525 extern void |
3526 emit_int(int d) | 3526 emit_int(int d) |
3527 { | 3527 { |
3528 data_mode(0); | 3528 data_mode(0); |
3529 printf("\t.long %d\n",d); | 3529 align(0); |
3530 printf("\t.word %d\n",d); | |
3530 } | 3531 } |
3531 | 3532 |
3532 extern void | 3533 extern void |
3533 emit_longlong(int e) | 3534 emit_longlong(int e) |
3534 { | 3535 { |
3570 extern void | 3571 extern void |
3571 emit_address(char *s,int offset) | 3572 emit_address(char *s,int offset) |
3572 { | 3573 { |
3573 data_mode(0); | 3574 data_mode(0); |
3574 if (offset) | 3575 if (offset) |
3575 printf("\t.long %s+%d\n",s,offset); | 3576 printf("\t.word %s+%d\n",s,offset); |
3576 else | 3577 else |
3577 printf("\t.long %s\n",s); | 3578 printf("\t.word %s\n",s); |
3578 } | 3579 } |
3579 | 3580 |
3580 extern void | 3581 extern void |
3581 emit_label(int labelno) | 3582 emit_label(int labelno) |
3582 { | 3583 { |
3583 data_mode(0); | 3584 data_mode(0); |
3584 printf("\t.long .L%d\n",labelno); | 3585 printf("\t.word .L%d\n",labelno); |
3585 } | 3586 } |
3586 | 3587 |
3587 extern void | 3588 extern void |
3588 emit_data_closing(NMTBL *n) | 3589 emit_data_closing(NMTBL *n) |
3589 { | 3590 { |