Automatic assembler generation?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Automatic assembler generation?

Richard Pennington
I've just started looking into code generation and have a newbie
question: Is there enough information in the .td files to make a tool to
  automatically generate an assembler from them? Is a project like that
in the works?

-Rich
_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Reply | Threaded
Open this post in threaded view
|

Re: Automatic assembler generation?

nkavv
Quoting Richard Pennington <[hidden email]>:

> I've just started looking into code generation and have a newbie
> question: Is there enough information in the .td files to make a tool to
>   automatically generate an assembler from them? Is a project like that
> in the works?
>
> -Rich

Hi

your question is reasonable, but it is probably out of scope for LLVM. There
have been some architecture description languages (ADLs) proposed for
specifying a machine description and generating all software development tools
(for compilation down to object code and for simulation) from there. A decent
(and realistic) approach would aim in generating binutils-specific source files
for the basic tools (as, ld, objdump at least) since binutils are quite mature.

There are references to new-generation ADLs based on XML DTDs but these are
mostly held in private.

Kind regards
Nikolaos Kavvadias

_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Reply | Threaded
Open this post in threaded view
|

Re: Automatic assembler generation?

Ralph Corderoy

Hi,

Nikolaos Kavvadias wrote:

> Quoting Richard Pennington <[hidden email]>:
> > I've just started looking into code generation and have a newbie
> > question: Is there enough information in the .td files to make a
> > tool to automatically generate an assembler from them? Is a project
> > like that in the works?
>
> your question is reasonable, but it is probably out of scope for LLVM.
> There have been some architecture description languages (ADLs)
> proposed for specifying a machine description and generating all
> software development tools (for compilation down to object code and
> for simulation) from there. A decent (and realistic) approach would
> aim in generating binutils-specific source files for the basic tools
> (as, ld, objdump at least) since binutils are quite mature.

The work of Norman Ramsey is a reasonable place to start reading up on
this.  http://www.eecs.harvard.edu/~nr/

Cheers,


Ralph.

_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Reply | Threaded
Open this post in threaded view
|

Re: Automatic assembler generation?

Richard Pennington
Ralph Corderoy wrote:

> Hi,
>
> Nikolaos Kavvadias wrote:
>> Quoting Richard Pennington <[hidden email]>:
>>> I've just started looking into code generation and have a newbie
>>> question: Is there enough information in the .td files to make a
>>> tool to automatically generate an assembler from them? Is a project
>>> like that in the works?
>> your question is reasonable, but it is probably out of scope for LLVM.
>> There have been some architecture description languages (ADLs)
>> proposed for specifying a machine description and generating all
>> software development tools (for compilation down to object code and
>> for simulation) from there. A decent (and realistic) approach would
>> aim in generating binutils-specific source files for the basic tools
>> (as, ld, objdump at least) since binutils are quite mature.
>
> The work of Norman Ramsey is a reasonable place to start reading up on
> this.  http://www.eecs.harvard.edu/~nr/
>
> Cheers,
>
>
> Ralph.
>
> _______________________________________________
> LLVM Developers mailing list
> [hidden email]         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
That's exactly why I asked the question. That's the functionality that
I'd like to duplicate.

-Rich
_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Reply | Threaded
Open this post in threaded view
|

Re: Automatic assembler generation?

nkavv
In reply to this post by Ralph Corderoy
Hi friends

do you have a specific ADL in mind?

I have a personal opinion (deduced from hands-on work) on most of them.

Here is an ADL list (A for Academic, C for Commercial, O for Open Access while
not A or C :):

- EXPRESSION (A)
- ArchC (A)
- nML (C)
- LISA 2.0 (C)
- Sim-nML (A)
- GCC RTL (O)

others could be listed but are only targeting the compiler/binary utilities
path.

others are not listed here since they cover only the simulator generation.
However, the following is quickly gaining audience:

- Unisim

Anyone is welcome to complete this list. (These are the ones that first come in
mind).


Cheers
Nikolaos Kavvadias

_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev