30

addq.l #2,%a7@(2) (a7 vaut 4bfa, tout ce qu'il y a de plus classique)

Cela dit j'ai essayé de faire ça :

stackhandler: 
	nop
	nop
	move	%usp,%a1 
	adda	#0x100,%a1 
=> la seconde autoint 7 arrive après le second nop

Avec un effet rigolo : l'adresse pour laquelle l'autoint 7 se déclenche n'est pas tout le temps la même (la plupart du temps 0x120, mais des fois un peu plus)

31

Hmm... ça a certainement une explication toute bête, mais la trouver est relativement difficile...
Je penserais soit à un retard de la gestion de l'int 7 plus ou moins important selon les cas (cas à déterminer bien sûr...), soit une une émulation de prefetch (mais ce n'est pas émulé par vti normalement :/)

EDIT: tu devrais peut-être essayer de logger (pc avant l'interruption et usp principalement) toutes interruptions dans ton programme avant et après le stack overflow pour voir ce que ça donne comme résultats.
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

32

Oui, il y a bien un retard dans le déclenchement de l'AI7 sur une vraie calc. Par contre je le croyais constant, égal à une instruction...
Mais je sais pas si une file d'attente de déclenchement se construit vraiment comme sur VTI, à tester.

33

Hum, je dirais que a priori la logique qui calcule s'il faut générer une interruption doit être purement combinatoire, ce qui fait que l'interruption devrait être prise en compte dès la fin de l'exécution de l'instruction qui la provoque. D'autant plus que pour bloquer l'écriture, il faut que le calcul soit fait dans le cycle d'écriture directement.

Enfin c'est juste une supposition.

34

Les instructions étant supposées atomiques dans les procs en général, elles devraient logiquement être déclenchées après la ligne de code qui les provoque.
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.