[llvm-commits] [llvm] r141365 - in /llvm/trunk: lib/Target/ARM/ARMISelDAGToDAG.cpp lib/Target/ARM/ARMISelLowering.cpp lib/Target/ARM/ARMInstrInfo.td lib/Target/ARM/ARMInstrThumb2.td test/CodeGen/ARM/iabs.ll test/CodeGen/Thumb/iabs.ll

Ana Pazos apazos at codeaurora.org
Fri Oct 7 14:39:16 PDT 2011


Hi Anton and Eric,

I tried to reproduce the issue with the latest LLVM code and compile-rt
tests.

The file floatsidf.c compiled fine. 

This is command line I used:
clang -c -ccc-host-triple armv6-none-linux-gnueabi -mfloat-abi=softfp
-integrated-as -O3 -o floatsidf.o floatsidf.c

What is your command line? Did you set any other flags?


Disassembled floatsidf.o file:
00000000 <__aeabi_i2d>:
   0:   e92d4800        push    {fp, lr}
   4:   e3500000        cmp     r0, #0
   8:   1a000002        bne     18 <__aeabi_i2d+0x18>
   c:   ed9f0b16        vldr    d0, [pc, #88]   ; 6c <__aeabi_i2d+0x6c>
  10:   ec510b10        vmov    r0, r1, d0
  14:   e8bd8800        pop     {fp, pc}
  18:   e1b01000        movs    r1, r0
  1c:   e2000102        and     r0, r0, #-2147483648    ; 0x80000000
  20:   42611000        rsbmi   r1, r1, #0
  24:   e16fef11        clz     lr, r1
  28:   e26e301f        rsb     r3, lr, #31
  2c:   e263c034        rsb     ip, r3, #52     ; 0x34
  30:   e26c2020        rsb     r2, ip, #32
  34:   e2633014        rsb     r3, r3, #20
  38:   e3530000        cmp     r3, #0
  3c:   e1a02231        lsr     r2, r1, r2
  40:   a1a02311        lslge   r2, r1, r3
  44:   e3a0301e        mov     r3, #30
  48:   e3833b01        orr     r3, r3, #1024   ; 0x400
  4c:   e043300e        sub     r3, r3, lr
  50:   e2222601        eor     r2, r2, #1048576        ; 0x100000
  54:   e0822a03        add     r2, r2, r3, lsl #20
  58:   e1a01c11        lsl     r1, r1, ip
  5c:   e1820000        orr     r0, r2, r0
  60:   ec401b10        vmov    d0, r1, r0
  64:   ec510b10        vmov    r0, r1, d0
  68:   e8bd8800        pop     {fp, pc}

Note: from floatsidf.i file: void __aeabi_i2d() __attribute__((alias("__"
"floatsidf")));;

Thanks,
Ana.
--
Qualcomm Innovation Center, Inc is a member of Code Aurora Forum


-----Original Message-----
From: llvm-commits-bounces at cs.uiuc.edu
[mailto:llvm-commits-bounces at cs.uiuc.edu] On Behalf Of Eric Christopher
Sent: Friday, October 07, 2011 11:57 AM
To: Anton Korobeynikov
Cc: llvm-commits at cs.uiuc.edu
Subject: Re: [llvm-commits] [llvm] r141365 - in /llvm/trunk:
lib/Target/ARM/ARMISelDAGToDAG.cpp lib/Target/ARM/ARMISelLowering.cpp
lib/Target/ARM/ARMInstrInfo.td lib/Target/ARM/ARMInstrThumb2.td
test/CodeGen/ARM/iabs.ll test/CodeGen/Thumb/iabs.ll


On Oct 7, 2011, at 11:52 AM, Anton Korobeynikov wrote:

> Hi Eric,
> 
>> llvm/projects/compiler-rt/lib/floatsidf.c
>> compiled with ToT clang.
> Which mode? ARM? Thumb2? Thumb1? For which ARM arch? compiler-rt has
> many different modes :)

armv6 it looks like :)

  COMPILE:   clang_darwin/cc_kext/armv6:
/Volumes/Data/sources/llvm/projects/compiler-rt/lib/floatsidf.c

/var/folders/9p/2n1d124n1fd9bvkb815y0j6r0000gp/T/floatsidf-TXq5db.s:19:canno
t honor width suffix -- `rsb r0,r0,#0'
clang: error: assembler command failed with exit code 1 (use -v to see
invocation)


-eric
_______________________________________________
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