[LLVMdev] defining symbols with lld

Michael Spencer bigcheesegs at gmail.com
Fri Aug 23 15:07:57 PDT 2013


On Thu, Aug 22, 2013 at 6:42 PM, Shankar Easwaran
<shankare at codeaurora.org>wrote:

> These are the changes I plan to make, and some questions that I have
>
> a) Define a new contentType for DefinedAtoms to say 'Expression'

b) Create a new class ExprnAtom derived from DefinedAtom
> c) The expression could also contain various functions that could be set
> in the expression, how should that be represented ?
> d) The actual content of the Atom would be a string representation of the
> expression, that can be used to emit YAML information
> e)The expression tree needs to be stored into the Native intermediate
> representation too right ? Store them as atoms ? How to represent constants
> and functions ?
> f) What about lld core ?
> g) Create a new reference type, How does (ExpressionAtom,
> ExpressionFunction, ExpressionConstant) this sound ?
>

We only need one reference type, as the resolver only cares that it is
referenced.


> h) I still need to figure out, what are the ways this symbol can be
> overridden, if the same symbol is defined in a file, does it override,
> (Resolver may need to handle it).


It would also be useful to keep source location information about
expressions so we can give nice diagnostics for things that can only be
detected by the backend.

I'm not completely convinced that DefinedAtom is the correct thing to use
for this case, as it follows completely different layout rules.

- Michael Spencer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130823/17f8b273/attachment.html>


More information about the llvm-dev mailing list