lundi 24 août 2020

miniGL 1.22

Bon, aucun coder ne semble être intéressé pour convertir cette librairie en asm, c'est dommage...

Bien souvent, lorsque personne ne veut vous aider à réaliser un projet, vous critique ou même vous décourage, c'est que vous êtes sur le bon chemin... A méditer !

Même les routines minuscules, gcc 2.95.3-4 est incapable de bien les coder... Incroyable mais vrai :
  1. _GLClearColor : 102 octets économisés par rapport à gcc
  2. _GLDepthFunc : 58 octets économisés par rapport à gcc
  3. _MGLLockDisplay : 26 octets économisés par rapport à gcc
  4. _MGLUnlockDisplay : 4 octets économisés par rapport à gcc
  5. _m_MatCopy : 32 octets économisés par rapport à gcc
  6. _GLPopMatrix : 108 octets économisés par rapport à gcc
  7. _GLPushMatrix : 96 octets économisés par rapport à gcc
  8. _GLAlphaFunc : 72 octets économisés par rapport à gcc
  9. _GLShadeModel : 24 octets économisés par rapport à gcc
  10. _GLBindTexture : 32 octets économisés par rapport à gcc
  11. _GLColor4f : 138 octets économisés par rapport à gcc
  12. _GLColor4fv : 126 octets économisés par rapport à gcc
  13. _GLFinish : 18 octets économisés par rapport à gcc

J'ai choisis celles-ci car elles sont utilisées par Quake2, bien pratique pour tester ensuite.

Une espèce de "protection" a été ôté des _GLPopMatrix et _GLPushMatrix. La nouvelle libmgl.a fait toujours la même taille pour l'instant, les octets gagnés ont été remplacé par des nop.

Librairie testée avec Quake 2 et GLBlitzQuake. Encore beaucoup de travail avant un speed up (seulement 0.5 seconde sous Q2), car toutes les routines retravaillées ci-dessus sont assez peu utilisées.

Sources et librairies compilées disponibles ici !
   

Aucun commentaire:

Enregistrer un commentaire

Laissez vos commentaires ici :