S
Sieghard Schicktanz
Guest
Hallo Christian,
Du schriebst am Fri, 13 Mar 2015 20:51:08 +0100:
Also wieder mal ein Optimierungsproblem. Zugunsten der MĂśglichkeit, aus dem
vorgegebenen Code was zu machen, was nach irgendeinem MaĂ "einfacher" ist,
wird im Compilerbau anscheinend immer mehr vergessen, daĂ das, was da am
Ende 'rauskommt, auch was vernĂźnftiges machen soll und daĂ das auch
einigermaĂen vernĂźnftig beschrieben werden kĂśnnen muĂ.
SchĂśn. Da ist dann scheint's das Endziel der Optimierung erreicht.
So ähnlich wurde auch schonmal ßber die Weiterentwicklungen der
Komprimierer gelästert, wo dann am Emde der ultimative Komprimierer alle
Dateien in ein einziges Byte packen wĂźrde...
(Bei hardwarenaher Software ist die Optimiererei jedenfalls immer recht
problematisch und ausschlieĂlich nach vorheriger PrĂźfung des erzeugten
Assembler-Codes und unter der Vorgabe, nie eine andere Version der an
derErstellung beteiligten Programme zu verwenden, zulässig.)
--
--
(Weitergabe von Adressdaten, Telefonnummern u.ä. ohne Zustimmung
nicht gestattet, ebenso Zusendung von Werbung oder ähnlichem)
-----------------------------------------------------------
Mit freundlichen GrĂźĂen, S. Schicktanz
-----------------------------------------------------------
Du schriebst am Fri, 13 Mar 2015 20:51:08 +0100:
beiden Anweisungen durch die Sequenzierung mit dem ";" sogar explizit
in ihrer Reihenfolge festgelegt.
Nein! Da der Compiler davon ausgehen darf, dass 'foo' nicht auf 'data'
zeigt [1], kann er den Zugriff auf 'foo', das dann halt uninitialisiert
Also wieder mal ein Optimierungsproblem. Zugunsten der MĂśglichkeit, aus dem
vorgegebenen Code was zu machen, was nach irgendeinem MaĂ "einfacher" ist,
wird im Compilerbau anscheinend immer mehr vergessen, daĂ das, was da am
Ende 'rauskommt, auch was vernĂźnftiges machen soll und daĂ das auch
einigermaĂen vernĂźnftig beschrieben werden kĂśnnen muĂ.
ist, auch vorziehen. Ein richtig schlauer Compiler optimiert die Routine
vermutlich gleich zu 'return 0;' um, denn wenn die zu lesenden Variable
eh uninitialisiert ist, kann die Routine ja ein beliebiges Ergebnis
zurĂźckgeben, also auch 0.
SchĂśn. Da ist dann scheint's das Endziel der Optimierung erreicht.
So ähnlich wurde auch schonmal ßber die Weiterentwicklungen der
Komprimierer gelästert, wo dann am Emde der ultimative Komprimierer alle
Dateien in ein einziges Byte packen wĂźrde...
(Bei hardwarenaher Software ist die Optimiererei jedenfalls immer recht
problematisch und ausschlieĂlich nach vorheriger PrĂźfung des erzeugten
Assembler-Codes und unter der Vorgabe, nie eine andere Version der an
derErstellung beteiligten Programme zu verwenden, zulässig.)
--
--
(Weitergabe von Adressdaten, Telefonnummern u.ä. ohne Zustimmung
nicht gestattet, ebenso Zusendung von Werbung oder ähnlichem)
-----------------------------------------------------------
Mit freundlichen GrĂźĂen, S. Schicktanz
-----------------------------------------------------------