-
Notifications
You must be signed in to change notification settings - Fork 13.5k
Assembly options not recognized when using integrated assembler #19063
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
assigned to @rengolin |
Explanations about the vfp choices: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0472c/BABDGGBI.html About Dwarf2, I'd rather change that in the Make files, as we don't support Dwarf2 any more and accepting that flag would be an error. |
Also the clang option is currently -gdwarf-2 and not --gdwarf-2, hence the unsupported argument error. It appears that GNU as accepts both versions of the option; but interestingly it accepts -gdwarf-3 but not --gdwarf-3. But I agree that as we don't support DWARF-2 the Makefile should be changed to at least -gdwarf-3 |
Right, so this is a bug, since the standard now is to use two dashes, not one. Dwarf 2 support should remain untouched and if debugging the kernel breaks, they've been warned! ;) |
I think Keith is right, we should use -dwarf-2 on both compilers, especially with GCC only accepting -dwarf-3. Vinicius/Behan, do you think such a patch would be easy to maintain? I think, given that it will work with GCC, upstreaming it would be a no-brainer. cheers, |
Proposal for softvfp implementation: |
The dwarf-2 issue, I hear, has already been changed in the LLVMLinux and Linaro's kernel trees, so we can consider it "fixed". |
I have had long discussions about softvfp+vfp and the conclusion is this:
Since we don't support FPA instructions in LLVM, and GCC will not emit The only reason it might still be in, as Ramana pointed out, is to |
mentioned in issue #19300 |
Extended Description
While compiling the Linux kernel with the IAS, we get this two parameter errors:
/llvmlinux/toolchain/clang/install/bin/clang -gcc-toolchain
/llvmlinux/arch/arm/toolchain/codesourcery/arm-2013.05
-Wp,-MD,arch/arm/vfp/.vfphw.o.d -nostdinc -isystem
/llvmlinux/toolchain/clang/install/bin/../lib/clang/3.5/include
-I/llvmlinux/targets/vexpress/src/linux/arch/arm/include
-Iarch/arm/include/generated -Iinclude
-I/llvmlinux/targets/vexpress/src/linux/arch/arm/include/uapi
-Iarch/arm/include/generated/uapi
-I/llvmlinux/targets/vexpress/src/linux/include/uapi -Iinclude/generated/uapi
-include /llvmlinux/targets/vexpress/src/linux/include/linux/kconfig.h
-D__KERNEL__ -target arm-none-linux-gnueabi -Qunused-arguments
-Wno-unknown-warning-option -D__ASSEMBLY__ -integrated-as -mfpu=vfp
-funwind-tables -marm -D__LINUX_ARM_ARCH__=7 -march=armv7-a
-include asm/unified.h -Wa,-mfpu=softvfp+vfp -mfloat-abi=soft -Wa,--gdwarf-2
-c -o arch/arm/vfp/vfphw.o arch/arm/vfp/vfphw.S
clang-3.5: error: unsupported argument '-mfpu=softvfp+vfp' to option 'Wa,'
clang-3.5: error: unsupported argument '--gdwarf-2' to option 'Wa,'
The easiest solution would be to add them as alias... But the dwarf2 worries me, since, AFAIK, we can't guarantee it.
The text was updated successfully, but these errors were encountered: