Re: [fpc-pascal] -OoASMCSE

2012-01-04 Thread Bernd
2012/1/2 Bernd : > (I haven't yet understood the original asmcse implementation, not even > partially, it looks incredibly complicated to me, it will immediately > induce a coma-like trance whenever I try to read through it) This wasn't meant as a criticism of the code, it was rather meant to ill

Re: [fpc-pascal] -OoASMCSE

2012-01-02 Thread Bernd
2012/1/2 Jonas Maebe : > At first sight, one important thing you forgot is that a single memory > location can be aliased by multiple pointers. Simply checking whether the > base register and offsets match is not enough I have not yet found out how to accomplish this. Wouldn't I need to also kn

Re: [fpc-pascal] -OoASMCSE

2012-01-02 Thread Jonas Maebe
On 02 Jan 2012, at 17:56, Bernd wrote: > This seems to work: > > http://pastebin.com/E3LYfJCx (used with 2.6.0) > > Is this how it should look like or am I doing something completely > stupid or did I forget something important? At first sight, one important thing you forgot is that a single

Re: [fpc-pascal] -OoASMCSE

2012-01-02 Thread Bernd
This seems to work: http://pastebin.com/E3LYfJCx (used with 2.6.0) Is this how it should look like or am I doing something completely stupid or did I forget something important? With this code (as a replacement for asmcse) the compiler would pass the complete bootstrap cycles without errors and

Re: [fpc-pascal] -OoASMCSE

2011-12-31 Thread Florian Klämpfl
Am 31.12.2011 20:04, schrieb Bernd: > 2011/12/31 Jonas Maebe : > >> * compiler/i386/daopt386.pas: data flow analysis (DFA, collects information >> about what each register holds) >> * compiler/i386/csopt386.pas: common subexpression elimination based on >> information collected by DFA >> * compi

Re: [fpc-pascal] -OoASMCSE

2011-12-31 Thread Bernd
2011/12/31 Jonas Maebe : > * compiler/i386/daopt386.pas: data flow analysis (DFA, collects information > about what each register holds) > * compiler/i386/csopt386.pas: common subexpression elimination based on > information collected by DFA > * compiler/i386/rropt386.pas: register renaming base

Re: [fpc-pascal] -OoASMCSE

2011-12-31 Thread Jonas Maebe
On 31 Dec 2011, at 15:12, Bernd wrote: > My question is now: Will ASMCSE eventually be completely removed? Probably, yes. > And > if this happens, will there be a replacement? As far as I'm concerned: an LLVM backend (although that's sort of independent of when/whether the ASMCSE optimizer wi

[fpc-pascal] -OoASMCSE

2011-12-31 Thread Bernd
Hi, [actual question is in the last paragraph of this post] I recently stumbled over an old (closed) bug in the bug tracker where the solution was to remove ASMCSE from O3, this bug report was later referred to as "the final drop in the bucket" to not longer have this optimization enabled by def