[llvm-bugs] [Bug 26874] New: 65536 out of the range of constraint 'I'

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Mar 8 01:50:54 PST 2016


https://llvm.org/bugs/show_bug.cgi?id=26874

            Bug ID: 26874
           Summary: 65536 out of the range of constraint 'I'
           Product: clang
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: LLVM Codegen
          Assignee: unassignedclangbugs at nondot.org
          Reporter: yaojun8558363 at gmail.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

I try to compile Android kernel by using clang.
During compiling, clang report an error. The error is about the implementation
of spinlock.
It says:  65536 out of the range of constraint 'I'.
env:
 host: x86_64-linux-ubuntu
 target: arm64
 cross_toolchain: gcc-linaro-aarch64-4.9-2014.08
 kernel branch: android-msm-bullhead-3.10-marshmallow-mr1
 code produce error:
 path:{kernel Dir}/arch/arm64/include/asm/spinlock.h
 content:
                //TICKET_SHIFT=16
          65 static inline int arch_spin_trylock(arch_spinlock_t *lock)
          66 {
          67         unsigned int tmp;
          68         arch_spinlock_t lockval;
          69 
          70         asm volatile(
          71 "1:     ldaxr   %w0, %2\n"
          72 "       eor     %w1, %w0, %w0, ror #16\n"
          73 "       cbnz    %w1, 2f\n"
          74 "       add     %w0, %w0, %3\n"
          75 "       stxr    %w1, %w0, %2\n"
          76 "       cbnz    %w1, 1b\n"
          77 "2:"
          78         : "=&r" (lockval), "=&r" (tmp), "+Q" (*lock)
          79         : "I" (1 << TICKET_SHIFT) 
          80         : "memory");
          81 
          82         return !tmp;
          83 }

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20160308/d6815ecf/attachment-0001.html>


More information about the llvm-bugs mailing list