r179229 - Mips specific inline asm memory operand modifier test case

Eric Christopher echristo at gmail.com
Wed Apr 10 16:12:20 PDT 2013


Header file :)

-eric

On Wed, Apr 10, 2013 at 4:07 PM, Michael Gottesman <mgottesman at apple.com> wrote:
> This broke buildbots:
>
> http://lab.llvm.org:8013/builders/clang-x86_64-darwin11-nobootstrap-RAincremental/builds/259
>
> On Apr 10, 2013, at 3:10 PM, Jack Carter <jack.carter at imgtec.com> wrote:
>
> Author: jacksprat
> Date: Wed Apr 10 17:10:45 2013
> New Revision: 179229
>
> URL: http://llvm.org/viewvc/llvm-project?rev=179229&view=rev
> Log:
> Mips specific inline asm memory operand modifier test case
>
> These changes are based on commit responses for r179135.
>
>
> Added:
>    cfe/trunk/test/CodeGen/mips-inline-asm-modifiers.c
>
> Added: cfe/trunk/test/CodeGen/mips-inline-asm-modifiers.c
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/mips-inline-asm-modifiers.c?rev=179229&view=auto
> ==============================================================================
> --- cfe/trunk/test/CodeGen/mips-inline-asm-modifiers.c (added)
> +++ cfe/trunk/test/CodeGen/mips-inline-asm-modifiers.c Wed Apr 10 17:10:45
> 2013
> @@ -0,0 +1,35 @@
> +// RUN: %clang -target mipsel-unknown-linux -S -o - -emit-llvm %s \
> +// RUN: | FileCheck %s
> +
> +// This checks that the frontend will accept inline asm operand modifiers
> +
> +#include "stdio.h"
> +
> +  // CHECK: %{{[0-9]+}} = call i32 asm ".set noreorder;\0Alw
> $0,$1;\0A.set reorder;\0A", "=r,*m"(i32* getelementptr inbounds ([8 x i32]*
> @b, i32 {{[0-9]+}}, i32 {{[0-9]+}})) #2, !srcloc !0
> +  // CHECK: %{{[0-9]+}} = call i32 asm "lw    $0,${1:D};\0A", "=r,*m"(i32*
> getelementptr inbounds ([8 x i32]* @b, i32 {{[0-9]+}}, i32 {{[0-9]+}})) #2,
> !srcloc !1
> +int b[8] = {0,1,2,3,4,5,6,7};
> +int  main()
> +{
> +  int i;
> +
> +  // The first word. Notice, no 'D'
> +  {asm (
> +  ".set noreorder;\n"
> +  "lw    %0,%1;\n"
> +  ".set reorder;\n"
> +  : "=r" (i)
> +  : "m" (*(b+4)));}
> +
> +  printf("%d\n",i);
> +
> +  // The second word
> +  {asm (
> +  "lw    %0,%D1;\n"
> +  : "=r" (i)
> +  : "m" (*(b+4))
> +  );}
> +
> +  printf("%d\n",i);
> +
> +  return 1;
> +}
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>



More information about the cfe-commits mailing list