xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGen/2010-06-17-asmcrash.c (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc // REQUIRES: x86-registered-target
2*0a6a1f1dSLionel Sambuc // RUN: %clang_cc1 -triple x86_64-unknown-unknown -O1 -no-integrated-as \
3*0a6a1f1dSLionel Sambuc // RUN:     -S -o - %s | FileCheck %s
4f4a2713aSLionel Sambuc 
5f4a2713aSLionel Sambuc typedef long long int64_t;
6f4a2713aSLionel Sambuc typedef unsigned char uint8_t;
7f4a2713aSLionel Sambuc typedef int64_t x86_reg;
8f4a2713aSLionel Sambuc 
avg_pixels8_mmx2(uint8_t * block,const uint8_t * pixels,int line_size,int h)9f4a2713aSLionel Sambuc void avg_pixels8_mmx2(uint8_t *block, const uint8_t *pixels, int line_size, int h)
10f4a2713aSLionel Sambuc {
11f4a2713aSLionel Sambuc 	__asm__ volatile("# %0 %1 %2 %3"
12f4a2713aSLionel Sambuc      :"+g"(h), "+S"(pixels), "+D"(block)
13f4a2713aSLionel Sambuc      :"r" ((x86_reg)line_size)
14f4a2713aSLionel Sambuc      :"%""rax", "memory");
15f4a2713aSLionel Sambuc // CHECK: # %ecx %rsi %rdi %rdx
16f4a2713aSLionel Sambuc  }
17