This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: expanding addrs for initializers
> The assumption in output_constant is that you've emitted something like
> ".word" or ".8byte" that says how wide the value is. Then, you just
> emit the value.
>
> Do you have a way in your assembler to emit a 32-bit pointer? If not,
> then you have to declare this an invalid initialization. If you do have
> such a way, then you have to set up things in the code that calls
> output_constant to say "the value you see next is a 32-bit pointer".
Yes, I have all that, and if I hack varasm to note the right type, it
emits exactly what I want - ".long reset". Check out the earlier
posts in this thread; rth and I have gone back and forth a lot for
this one.
And assemble_variable() doesn't emit the .long anyway,
output_constant() does.