minabeoki commented on pull request #5662: URL: https://github.com/apache/incubator-nuttx/pull/5662#issuecomment-1058959569
@xiaoxiang781216 I compiled for sabre-6quad(A9) config, and checked the compiled assemble code. In case of "-mfpu=neon-vfpv3", GCC uese NEON instructions for integer operations. In case of "-mfpu=vfpv3", GCC does not uses for integer operations. "-mfpu=neon-vfpv3" option may be dangerous for the kernel context switch mechanism. What do you think about this ? For example, procfs_statfs function, https://github.com/apache/incubator-nuttx/blob/779665c7045b7661ebdf4baf0da8f4a0264795a1/fs/procfs/fs_procfs.c#L997-L1009 "-mfpu=neon-vfpv3" case: (vmov and vstr are used for 64bit store.) ``` 10807d00 <procfs_statfs>: 10807d00: b510 push {r4, lr} 10807d02: 460c mov r4, r1 10807d04: 2238 movs r2, #56 ; 0x38 10807d06: 2100 movs r1, #0 10807d08: 4620 mov r0, r4 10807d0a: f7fb f9d8 bl 108030be <memset> 10807d0e: 4b07 ldr r3, [pc, #28] ; (10807d2c <procfs_statfs+0x2c>) 10807d10: 2000 movs r0, #0 10807d12: efc0 0010 vmov.i32 d16, #0 ; 0x00000000 10807d16: 60a0 str r0, [r4, #8] 10807d18: 6023 str r3, [r4, #0] 10807d1a: 2320 movs r3, #32 10807d1c: edc4 0b04 vstr d16, [r4, #16] 10807d20: edc4 0b06 vstr d16, [r4, #24] 10807d24: edc4 0b08 vstr d16, [r4, #32] 10807d28: 6063 str r3, [r4, #4] 10807d2a: bd10 pop {r4, pc} 10807d2c: 434f5250 .word 0x434f5250 ``` "-mfpu=vfpv3" case: (There are no neon instructions) ``` 10807d08 <procfs_statfs>: 10807d08: b510 push {r4, lr} 10807d0a: 460c mov r4, r1 10807d0c: 2238 movs r2, #56 ; 0x38 10807d0e: 2100 movs r1, #0 10807d10: 4620 mov r0, r4 10807d12: f7fb f9d8 bl 108030c6 <memset> 10807d16: 4b07 ldr r3, [pc, #28] ; (10807d34 <procfs_statfs+0x2c>) 10807d18: 2200 movs r2, #0 10807d1a: 2000 movs r0, #0 10807d1c: 60a0 str r0, [r4, #8] 10807d1e: 6023 str r3, [r4, #0] 10807d20: 2300 movs r3, #0 10807d22: e9c4 2304 strd r2, r3, [r4, #16] 10807d26: e9c4 2306 strd r2, r3, [r4, #24] 10807d2a: e9c4 2308 strd r2, r3, [r4, #32] 10807d2e: 2320 movs r3, #32 10807d30: 6063 str r3, [r4, #4] 10807d32: bd10 pop {r4, pc} 10807d34: 434f5250 .word 0x434f5250 ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org