Skip to content

Commit 6ab83e8

Browse files
committed
0.9f patch 1
1 parent 59acc29 commit 6ab83e8

File tree

14 files changed

+3135
-3132
lines changed

14 files changed

+3135
-3132
lines changed

declaration.c

+1,443-1,443
Large diffs are not rendered by default.

flow.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ struct flowgraph *jump_optimization(void)
373373
struct IC *m;
374374
if(DEBUG&1024) printf("deleting dead block %d\n",g->index);
375375
#ifdef HAVE_MISRA
376-
misra_neu(52,14,1,-1);
376+
/* removed */
377377
#endif
378378
p=g->start;i=0;
379379
while(p&&!i){

ic.c

+4-4
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ void add_IC(struct IC *new)
264264
if(!new) return;
265265
if(nocode) {
266266
#ifdef HAVE_MISRA
267-
misra_neu(52,14,1,-1);
267+
/* removed */
268268
#endif
269269
/*free(new);*/ /* building a list to free later would be nice... */
270270
return;
@@ -429,7 +429,7 @@ void add_IC(struct IC *new)
429429
/* momentan noch nicht perfekt, da es bei alloc/freereg stoppt */
430430
free(new);
431431
#ifdef HAVE_MISRA
432-
misra_neu(52,14,1,-1);
432+
/* removed */
433433
#endif
434434
if(DEBUG&1) printf("Unreachable Statement deleted\n");
435435
return;
@@ -2111,8 +2111,8 @@ void convert(np p,int f)
21112111

21122112
if(p->flags==CEXPR||p->flags==PCEXPR){
21132113
#ifdef HAVE_MISRA
2114-
if((o&NU)<(f&NU))
2115-
misra_neu(18,0,0,-1);
2114+
/* removed */
2115+
/* removed */
21162116
#endif
21172117
eval_constn(p);
21182118
p->ntyp->flags=f;

machines/m68k/machine.c

+2
Original file line numberDiff line numberDiff line change
@@ -2327,6 +2327,8 @@ static void assign(FILE *f,struct IC *p,struct obj *q,struct obj *z,int c,long s
23272327
zreg=8;
23282328
}else{
23292329
emit(f,"\tsub%s.%s\t#%ld,%s\n",quick[s<=8],strshort[s<=32767],(long)s,mregnames[sp]);
2330+
push(size);
2331+
size=0;
23302332
if(!regavailable(0))
23312333
zreg=pget_reg(f,0,p);
23322334
else

machines/m68k/machine.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ struct reg_handle {
8989

9090
/* support for variable-length arrays */
9191
#define ALLOCVLA_REG 9
92-
#define ALLOCVLA_INLINEASM "\tsub.l\td0,a7\n\tmove.l\ta7,d0"
92+
#define ALLOCVLA_INLINEASM "\taddq.l\t#3,d0\n\tand.b\t#252,d0\n\tsub.l\td0,a7\n\tmove.l\ta7,d0"
9393
#define FREEVLA_REG 0
9494
/* TODO: find a better solution some time */
9595
#define FREEVLA_INLINEASM "\tmove.l\t(a7),a7\n\tsubq.l\t#4,a7"

0 commit comments

Comments
 (0)