[llvm] r214493 - [mips][PR19612] Fix va_arg for big-endian mode.

Daniel Sanders Daniel.Sanders at imgtec.com
Sat Aug 2 02:27:02 PDT 2014


Thanks for fixing that. The reason that mips*-unknown-unknown didn't work is that bare-metal triples set up the defaults so that there is a global pointer (and therefore uses %gp_rel) whereas linux triples don't.

Is this the only one that failed? If so, then I ought to look into the reason some of the other tests don't show the same behaviour. The same set of options has been used on some of the other tests that use global variables.
________________________________________
From: Duncan P. N. Exon Smith [dexonsmith at apple.com]
Sent: 01 August 2014 23:32
To: NAKAMURA Takumi
Cc: Daniel Sanders; llvm-commits
Subject: Re: [llvm] r214493 - [mips][PR19612] Fix va_arg for big-endian mode.

Fixed, thanks!

> On 2014 Aug 1, at 15:24, NAKAMURA Takumi <geek4civic at gmail.com> wrote:
>
> It also fails with -mtriple={mips|mipsel}-unknown-unknown.
> Tweaked in r214578.
>
> 2014-08-02 6:53 GMT+09:00 Duncan P. N. Exon Smith <dexonsmith at apple.com>:
>>
>>> On 2014 Aug 1, at 02:17, Daniel Sanders <Daniel.Sanders at imgtec.com> wrote:
>>>
>>> Added: llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs.ll
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs.ll?rev=214493&view=auto
>>> ==============================================================================
>>> --- llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs.ll (added)
>>> +++ llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs.ll Fri Aug  1 04:17:39 2014
>>> @@ -0,0 +1,1104 @@
>>> +; RUN: llc -march=mips -relocation-model=static < %s | FileCheck --check-prefix=ALL --check-prefix=O32 --check-prefix=O32-BE %s
>>> +; RUN: llc -march=mipsel -relocation-model=static < %s | FileCheck --check-prefix=ALL --check-prefix=O32 --check-prefix=O32-LE %s
>>> +
>>> +; RUN-TODO: llc -march=mips64 -relocation-model=static -mattr=-n64,+o32 < %s | FileCheck --check-prefix=ALL --check-prefix=O32 %s
>>> +; RUN-TODO: llc -march=mips64el -relocation-model=static -mattr=-n64,+o32 < %s | FileCheck --check-prefix=ALL --check-prefix=O32 %s
>>> +
>>> +; RUN: llc -march=mips64 -relocation-model=static -mattr=-n64,+n32 < %s | FileCheck --check-prefix=ALL --check-prefix=NEW --check-prefix=N32 --check-prefix=NEW-BE %s
>>> +; RUN: llc -march=mips64el -relocation-model=static -mattr=-n64,+n32 < %s | FileCheck --check-prefix=ALL --check-prefix=NEW --check-prefix=N32 --check-prefix=NEW-LE %s
>>> +
>>> +; RUN: llc -march=mips64 -relocation-model=static -mattr=-n64,+n64 < %s | FileCheck --check-prefix=ALL --check-prefix=NEW --check-prefix=N64 --check-prefix=NEW-BE %s
>>> +; RUN: llc -march=mips64el -relocation-model=static -mattr=-n64,+n64 < %s | FileCheck --check-prefix=ALL --check-prefix=NEW --check-prefix=N64 --check-prefix=NEW-LE %s
>>
>> I think you might need triples here -- this testcase is failing locally for
>> me on Darwin:
>>
>> Command Output (stderr):
>> --
>> /Volumes/Data/llvm/use-list-order/test/CodeGen/Mips/cconv/arguments-varargs.ll:84:12: error: expected string not found in input
>> ; O32-DAG: addiu [[GV:\$[0-9]+]], ${{[0-9]+}}, %lo(hwords)
>>           ^
>> <stdin>:34:2: note: scanning from here
>> #NO_APP
>> ^
>> <stdin>:37:2: note: possible intended match here
>> addiu $3, $gp, %gp_rel(hwords)
>> ^
>> /Volumes/Data/llvm/use-list-order/test/CodeGen/Mips/cconv/arguments-varargs.ll:447:12: error: expected string not found in input
>> ; O32-DAG: addiu [[GV:\$[0-9]+]], ${{[0-9]+}}, %lo(hwords)
>>           ^
>> <stdin>:201:2: note: scanning from here
>> #NO_APP
>> ^
>> <stdin>:204:2: note: possible intended match here
>> addiu $3, $gp, %gp_rel(hwords)
>> ^
>> /Volumes/Data/llvm/use-list-order/test/CodeGen/Mips/cconv/arguments-varargs.ll:809:12: error: expected string not found in input
>> ; O32-DAG: addiu [[GV:\$[0-9]+]], ${{[0-9]+}}, %lo(hwords)
>>           ^
>> <stdin>:367:2: note: scanning from here
>> #NO_APP
>> ^
>> <stdin>:370:2: note: possible intended match here
>> addiu $3, $gp, %gp_rel(hwords)
>> ^
>>
>> --
>>
>> Let me know if you need help reproducing.
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits





More information about the llvm-commits mailing list