[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pcc-list
Subject:    Re: [Pcc] switch/case by MRST
From:       "Gregory McGarry" <greg () bitlynx ! com>
Date:       2014-05-07 9:51:18
Message-ID: 20140507025118.ab62c74ef4fdac7a72bd4f4cde8f70c1.f8fab97444.wbe () email03 ! secureserver ! net
[Download RAW message or body]

Yeah, I think that was another of my unfinished projects.

Thanks for reviving it!  We should do it.



> -------- Original Message --------
> Subject: [Pcc] switch/case by MRST
> From: Peter Kuschnerus <peter.kuschnerus@gmx.de>
> Date: Tue, May 06, 2014 9:23 am
> To: pcc@lists.ludd.ltu.se
> 
> 
> Hi !
> 
> Multi-way Radix Search Tree (MRST)
> 
> 
> In arch powerpc, module code.c
> there I did find a not finished implementation ( inactive by #if 0 )
> of the MRST algorithm for generating code for switch/case
> 
> Reading the papers of the originators of that algorithm
> I could understand this implementation.
> 
> I adapted this to my port.
> I solved several issues.
> 
> A main issue was: this code supports only int as argument for switch,
> while the standard allowes any width of integer.
> I changed that.
> 
> I also rewrote the emitting of the "indexed jump"
> by using XASM.
> 
> Then it seemed to work, but only without optimisation.
> Optimizing threated all code that is referenced by pointers
> as unreachable and removes it.
> 
> Then I did find the interface to keep deljumps from removing a label,
> by setting a list of labels in epp->ip_labels.
> This interface looks never beeing used.
> 
> I used this interface. Finaly it seemed to work.
> 
> Most of the code is arch independent,
> exept the emitting of the instuction of "indexed jump".
> If the arch has suitable instructions for that,
> theese are not in table.c, but are instead expressable by XASM.
> I made a version for i386 and for amd64 and tested it.
> 
> Of course all this needs more regession tests
> before it can be used generally.
> 
> Now how to proceed with this ??
> My idea is, that someone reviews it.
> 
> 
> Regards
> Peter Kuschnerus
> 
> 
> _______________________________________________
> Pcc mailing list
> Pcc@lists.ludd.ltu.se
> http://lists.ludd.ltu.se/cgi-bin/mailman/listinfo/pcc
_______________________________________________
Pcc mailing list
Pcc@lists.ludd.ltu.se
http://lists.ludd.ltu.se/cgi-bin/mailman/listinfo/pcc
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic