GitHub PushEvent at 2014-03-26 05:11:41
Repository: llvm-project
Actor: chapuni
Payload: {"shas":[["19ae66190334c8d626290e5dda2c755802c4a305","6b31706989f3cf9466bfddbf48eab0c43e646ba8@gmail.com","Prevent alias from pointing to weak aliases.\n\nAliases are just another name for a position in a file. As such, the\nregular symbol resolutions are not applied. For example, given\n\ndefine void @my_func() {\n  ret void\n}\n@my_alias = alias weak void ()* @my_func\n@my_alias2 = alias void ()* @my_alias\n\nWe produce without this patch:\n\n        .weak   my_alias\nmy_alias = my_func\n        .globl  my_alias2\nmy_alias2 = my_alias\n\nThat is, in the resulting ELF file my_alias, my_func and my_alias are\njust 3 names pointing to offset 0 of .text. That is *not* the\nsemantics of IR linking. For example, linking in a\n\n@my_alias = alias void ()* @other_func\n\nwould require the strong my_alias to override the weak one and\nmy_alias2 would end up pointing to other_func.\n\nThere is no way to represent that with aliases being just another\nname, so the best solution seems to be to just disallow it, converting\na miscompile into an error.","Rafael Espindola",true],["017a43b3f4c349128ca10662208d0bc2b229be13","76a8e82c3bdc78a1f9490a34857cdee8b1b06a45@anl.gov","[PowerPC] Generate logical vector VSX instructions\n\nThese instructions are essentially the same as their Altivec counterparts, but\nhave access to the larger VSX register file.","Hal Finkel",true]],"size":2,"ref":"refs/heads/master","head":"017a43b3f4c349128ca10662208d0bc2b229be13"}