<div><br></div><div>I have submitted the patch in the following llvm-commits article </div><a href="http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20101213/113762.html">http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20101213/113762.html</a><br>
<br><div>Best regards,</div><div>Woongsik Choi<br><div><br></div><div><div class="gmail_quote">2010/12/15 Anton Korobeynikov <span dir="ltr"><<a href="mailto:anton@korobeynikov.info">anton@korobeynikov.info</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hello,<br>
<div class="im"><br>
> __used__ attributes in llvm-gcc/gcc/crtstuff.c.<br>
> GCC compiles crtstuff.c with -fno-toplevel-reorder option, which ensures<br>
> that<br>
> unused static globals are not removed during optimization. However, since<br>
> LLVM does not support that option,<br>
</div>The problem is not that LLVM does not support this option. Though,<br>
this is indeed so due to certain reason.<br>
All the code is transformed into IR and transformations are performed<br>
on it. It will be really bad for the<br>
transformations to depend on some magic command line options. Even<br>
more, consider e.g. you tried<br>
to link two IR files - one with the code with -fno-toplevev-reorder<br>
and one - without. What should be done<br>
in such case?<br>
<div class="im"><br>
> I presume __used__ attribute is used instead.<br>
</div>This is correct, because this is what in fact the code should do here.<br>
<div class="im"><br>
> My question is that why some global static variables, such as<br>
> __frame_dummy_init_array_entry<br>
> and __do_global_dtors_aux_fini_array_entry, are not given __used__<br>
> attributes.<br>
</div>Just bug.<br>
<div class="im"><br>
> it caused no problem for me so far.<br>
> Would it be any problem in doing so?<br>
</div>Please prepare the patch and submit to llvm-commit. Thanks!<br>
<font color="#888888"><br>
--<br>
With best regards, Anton Korobeynikov<br>
Faculty of Mathematics and Mechanics, Saint Petersburg State University<br>
</font></blockquote></div><br></div></div>