[llvm-commits] [llvm] r40069 - in /llvm/trunk: docs/ lib/AsmParser/ lib/VMCore/ test/ test/Assembler/ test/CFrontend/ test/CodeGen/ARM/ test/CodeGen/Alpha/ test/CodeGen/PowerPC/ test/CodeGen/X86/ test/Feature/ test/Integer/ test/Transforms/GVNPRE/ test/Transforms/GlobalOpt/ test/Transforms/IndVarsSimplify/

Chris Lattner clattner at apple.com
Mon Jul 30 10:45:58 PDT 2007


On Jul 19, 2007, at 8:53 PM, Reid Spencer wrote:

> On Thu, 2007-07-19 at 20:32 -0700, Chris Lattner wrote:
>> On Jul 19, 2007, at 4:13 PM, Reid Spencer wrote:
>>
>>> Author: reid
>>> Date: Thu Jul 19 18:13:04 2007
>>> New Revision: 40069
>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=40069&view=rev
>>> Log:
>>> For PR1553:
>>> Change the keywords for the zext and sext parameter attributes to be
>>> zeroext and signext so they don't conflict with the keywords for the
>>> instructions of the same name. This gets around the ambiguity.
>>
>> Thanks Reid!
>>
>> Shouldn't the .ll parser autoupgrade llvm 2.0 .ll files?
>
> There isn't a good way to do it and still fix PR1553. That is, I'd  
> have
> to reinstate the zext and sext keywords as parameter attributes so  
> that
> the ambiguity between a function level zext/sext and a sext/zext
> instruction would remain.

It isn't acceptable to break backwards compatibility with old files.   
Can we just do a hack where we handle the common case by looking at  
the line that the token comes from?  For example:


   call foo() zext

would be treated different than:

   call foo()
   zext

because the zext is not on the same line.  This seems to be a good  
solution, thoughts?

-Chris



More information about the llvm-commits mailing list