[PATCH] Catch malformed inline assembly clobber constraints

Akira Hatanaka ahatanak at gmail.com
Fri Sep 5 15:41:33 PDT 2014


Thanks. I committed the patch in r217288.


On Thu, Sep 4, 2014 at 1:23 PM, Eric Christopher <echristo at gmail.com> wrote:

>
>
>
> On Wed, Sep 3, 2014 at 7:23 PM, Akira Hatanaka <ahatanak at gmail.com> wrote:
>
>> On Wed, Sep 3, 2014 at 6:49 PM, Eric Christopher <echristo at gmail.com>
>> wrote:
>>
>>>
>>>
>>> On Wed, Sep 3, 2014 at 6:06 PM, Akira Hatanaka <ahatanak at gmail.com>
>>> wrote:
>>>
>>>> On Wed, Sep 3, 2014 at 5:32 PM, Eric Christopher <echristo at gmail.com>
>>>> wrote:
>>>>
>>>>> The testcase doesn't need either the triple or the data layout for an
>>>>> llvm-as test.
>>>>>
>>>>>
>>>> OK, I'll remove the triples and data layout.
>>>>
>>>>
>>>>> Also, I tried it, which llvm_unreachable? (I mean, it's obviously
>>>>> doing something wonky so it's not necessarily a bad patch, but I can't
>>>>> duplicate whatever problem you're seeing).
>>>>>
>>>>>
>>>> Sorry, my comment was misleading. If you compile the test case with
>>>> "llc -march=aarch64", llc terminates at MachineValueType.h:386.
>>>>
>>>>
>>> I see it now, thanks. I'd tried an older version of llc and it didn't
>>> fail oddly enough.
>>>
>>> I'm not sure this is the right place for the check, could probably do
>>> the clobber error checking up above where it's set? Any reason to put it
>>> down here?
>>>
>>>
>> I was just trying to avoid checking whether I==E, but looking at it now,
>> it might be better to move the check up.
>>
>> I am assuming you are suggesting moving the check to line 93 where the
>> prefixes are parsed.
>>
>>
>
> Yep :)
>
> OK with that and some comments.
>
> -eric
>
>
>>  Thanks!
>>>
>>> -eric
>>>
>>>
>>>
>>>>
>>>>
>>>>> -eric
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Wed, Sep 3, 2014 at 1:45 PM, Akira Hatanaka <ahatanak at gmail.com>
>>>>> wrote:
>>>>>
>>>>>> The attached patch adds a check to InlineAsm::ConstraintInfo::Parse
>>>>>> which checks that '{' immediately follows '~' in the inline assembly
>>>>>> clobber constraint. This enables catching the error in the test case
>>>>>> earlier by LLParser and printing a more helpful diagnostic, rather than
>>>>>> terminating when an llvm_unreachable is triggered.
>>>>>>
>>>>>> This patch fixes rdar://problem/14206559.
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> llvm-commits mailing list
>>>>>> llvm-commits at cs.uiuc.edu
>>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140905/29c0835b/attachment.html>


More information about the llvm-commits mailing list