<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
The documents John mentions are highly useful. I'm actually doing
this - and find the source in various other architecture subtrees to
be invaluable - lib/Target/<target>. Our machine is a 64-bit
RISC machine, so reading the PPC/Mips/Sparc code is useful. For
some instructions, ARM has been useful (pre/post
increment/decrement).<br>
<br>
If this is a commercial effort, Synopsys makes a tool called
Processor Designer which can take you quite a ways to doing this.<br>
<br>
Best of Luck,<br>
<br>
Richard Gorton<br>
<a class="moz-txt-link-abbreviated" href="http://www.cog-e.com">www.cog-e.com</a><br>
<br>
<br>
<br>
<div class="moz-cite-prefix">On 6/6/2014 10:53 AM, John Criswell
wrote:<br>
</div>
<blockquote cite="mid:5391D5F7.3060908@illinois.edu" type="cite">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<div class="moz-cite-prefix">Dear Pratik,<br>
<br>
What I think you will want to do is to create a new assembler
and a new code generator for your architecture. This, I
suspect, means that you'll need to understand how to describe
your architecture's instruction set using TableGen, how to
create an assembler using the MC interface, and how to build a
code generator.<br>
<br>
My best suggestion is to start looking at the documentation
"Writing an LLVM Backend" and "The LLVM Target-Dependent Code
Generator" at <a moz-do-not-send="true"
class="moz-txt-link-freetext" href="http://llvm.org/docs">http://llvm.org/docs</a>.
The "Tablegen" document may also help. The links for these
documents are at:<br>
<br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://llvm.org/docs/WritingAnLLVMBackend.html">http://llvm.org/docs/WritingAnLLVMBackend.html</a><br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://llvm.org/docs/CodeGenerator.html">http://llvm.org/docs/CodeGenerator.html</a><br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://llvm.org/docs/TableGen/index.html">http://llvm.org/docs/TableGen/index.html</a><br>
<br>
As I have not written a new code generator from scratch myself,
that's about all the help I can offer. I suggest reading these
documents (if you have not already) and then write the list with
more specific questions as needed.<br>
<br>
Good luck,<br>
<br>
John Criswell<br>
<br>
<br>
On 6/4/14, 3:37 AM, pratik dand wrote:<br>
</div>
<blockquote
cite="mid:CAJFa+mQgQ4iFAnd0DrYK99MTj3Xnirv0Md1iTvPfd6_P8AvuEQ@mail.gmail.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>Dear,<br>
<br>
</div>
I am looking to build a compiler-assembler with a
custom architecture. <br>
</div>
I have a new Instruction set defined with me and I would
like atleast my C programs to get converted to assembly
language corresponding to the custom architecture.<br>
<br>
</div>
I have been going through llvm and its resources on the
web, Can any one of you offer guidance about the above
problem.<br>
<br>
</div>
All I want is to develop a tool which can take in a custom
architecture and assemble all programs corresponding to the
architecture.<br>
<br>
</div>
Regards, <br>
<div>
<div>
<div>
<div>
<div>Pratik
<div><br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
LLVM Developers mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a> <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://llvm.cs.uiuc.edu">http://llvm.cs.uiuc.edu</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a>
</pre>
</blockquote>
<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
LLVM Developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a> <a class="moz-txt-link-freetext" href="http://llvm.cs.uiuc.edu">http://llvm.cs.uiuc.edu</a>
<a class="moz-txt-link-freetext" href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a>
</pre>
</blockquote>
<br>
</body>
</html>