[llvm-bugs] [Bug 25818] New: ARM backend emitting vfp/neon instructions while features disabled

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Dec 14 01:41:30 PST 2015


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

            Bug ID: 25818
           Summary: ARM backend emitting vfp/neon instructions while
                    features disabled
           Product: libraries
           Version: 3.6
          Hardware: Macintosh
                OS: MacOS X
            Status: NEW
          Severity: normal
          Priority: P
         Component: Backend: ARM
          Assignee: unassignedbugs at nondot.org
          Reporter: llvm at shortepic.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

Compiling with rustc-nightly (81ae8be71 2015-12-09), and the following target
definition containing (selected):

    "arch": "arm",
    "cpu": "cortex-a8",
    "fpu": "none",
    "data-layout":
"e-m:e-p:32:32-i1:8:32-i8:8:32-i16:16:32-i64:64-v128:64:128-a:0:32-n32-S64",
    "disable-redzone": true,
    "executables": true,
    "llvm-target": "arm-none-eabi",
    "os": "none",
    "target-endian": "little",
    "target-word-size": "32",
    "target-pointer-width": "32",
    "no-compiler-rt" : true,
    "has-floating-point" : false,
    "features" : "-fp16,-d16,-vfp2,-vfp3,-vfp4,-neon,-fp-only-sp",

rustc is emitting v* instructions:

    106c0:    edd00b00     vldr    d16, [r0]
    106c4:    ed4b0b08     vstr    d16, [fp, #-32]    ; 0xffffffe0
    106c8:    edd00b02     vldr    d16, [r0, #8]
    106cc:    ed4b0b0a     vstr    d16, [fp, #-40]    ; 0xffffffd8
    106d0:    e5900010     ldr    r0, [r0, #16]
    106d4:    e50b002c     str    r0, [fp, #-44]    ; 0x2c
    106d8:    ed5b0b08     vldr    d16, [fp, #-32]    ; 0xffffffe0
    106dc:    edcd0b0a     vstr    d16, [sp, #40]    ; 0x28

I'd like to suppress those when generating kernel code and I understand
negating features to be the basis for doing that. Can a maintainer please give
me a sense whether this is intended behaviour? 

(So sorry I don't have the skills to isolate this closer to llvm..)

Regards, Alister.

-- 
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/20151214/42983c2e/attachment.html>


More information about the llvm-bugs mailing list