Re: Optimization techniques and runtime checks

Bart <bc@freeuk.com>
Wed, 8 May 2019 14:58:29 +0100

          From comp.compilers

Related articles
Re: Optimization techniques david.brown@hesbynett.no (David Brown) (2019-04-25)
Re: Optimization techniques 847-115-0292@kylheku.com (Kaz Kylheku) (2019-04-26)
Re: Optimization techniques david.brown@hesbynett.no (David Brown) (2019-04-28)
Re: Optimization techniques and runtime checks DrDiettrich1@netscape.net (Hans-Peter Diettrich) (2019-04-29)
Re: Optimization techniques and runtime checks david.brown@hesbynett.no (David Brown) (2019-05-07)
Re: Optimization techniques and runtime checks DrDiettrich1@netscape.net (Hans-Peter Diettrich) (2019-05-08)
Re: Optimization techniques and runtime checks david.brown@hesbynett.no (David Brown) (2019-05-08)
Re: Optimization techniques and runtime checks bc@freeuk.com (Bart) (2019-05-08)
Re: Optimization techniques and runtime checks DrDiettrich1@netscape.net (Hans-Peter Diettrich) (2019-05-08)
Re: Optimization techniques and runtime checks david.brown@hesbynett.no (David Brown) (2019-05-08)
Re: Optimization techniques and runtime checks bc@freeuk.com (Bart) (2019-05-09)
Re: Optimization techniques and runtime checks david.brown@hesbynett.no (David Brown) (2019-05-09)
Re: Optimization techniques and runtime checks robin51@dodo.com.au (Robin Vowels) (2019-05-11)
Re: Optimization techniques and runtime checks genew@telus.net (Gene Wirchenko) (2019-05-11)
[1 later articles]
| List of all articles for this month |

From: Bart <bc@freeuk.com>
Newsgroups: comp.compilers
Date: Wed, 8 May 2019 14:58:29 +0100
Organization: virginmedia.com
References: <72d208c9-169f-155c-5e73-9ca74f78e390@gkc.org.uk> 19-04-021 19-04-023 19-04-037 19-04-046 19-05-052
Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="57804"; mail-complaints-to="abuse@iecc.com"
Keywords: optimize, debug
Posted-Date: 08 May 2019 12:47:21 EDT
In-Reply-To: 19-05-052
Content-Language: en-GB

On 07/05/2019 15:29, David Brown wrote:
> On 29/04/2019 22:36, Hans-Peter Diettrich wrote:


>> A better compiler could have a look at multiple (dependent) modules, so
>> that it can apply some more global optimizations during compilation
>> already.
>
> Indeed. And better compilers do that - it is known as "link time
> optimisation", "whole program optimisation", "omniscient optimisation",
> "inter-module optimisation", etc.


My recent compilers (not for C; the language doesn't really allow it)
have all been whole-program** compilers.


Although they don't really do optimisation (it's a separate project I
might get around to), they would be ideally placed as all the source
code is available for all functions at the same time.


There is one global, hierarchical symbol table linking all functions,
variables, types etc. across the project.


So anyway, thanks for confirming that mine might be one of the better
compilers! Usually you are not so kind.




(** The 'whole-program' is defined as all the source files that are
built into a single binary executable, or single shared library.


Functions in external libraries, which tend to be in another language
anyway, are not included in the source visible to the compiler. Such
libraries are also used only as shared libraries (eg. dll) so are never
statically linked.)


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.