peter.smith added a comment.
Added LLVM_FALLTHROUGH; in r344890.
Repository:
rC Clang
https://reviews.llvm.org/D52784
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
xbolva00 added inline comments.
Comment at: lib/Driver/ToolChains/Gnu.cpp:241
+ case llvm::Triple::thumbeb:
+IsBigEndian = true;
+ case llvm::Triple::arm:
peter.smith wrote:
> xbolva00 wrote:
> > Gnu.cpp:241:17: warning: this statement may fall through
>
peter.smith added a comment.
Thanks for pointing that out, I'm out of office today, will look at describing
the intention to fall through when I get back in on Monday.
Comment at: lib/Driver/ToolChains/Gnu.cpp:241
+ case llvm::Triple::thumbeb:
+IsBigEndian = true;
+
xbolva00 added inline comments.
Comment at: lib/Driver/ToolChains/Gnu.cpp:241
+ case llvm::Triple::thumbeb:
+IsBigEndian = true;
+ case llvm::Triple::arm:
Gnu.cpp:241:17: warning: this statement may fall through
[-Wimplicit-fallthrough=]
IsBigEndian
nickdesaulniers added a comment.
Thanks again for this patch!
Repository:
rC Clang
https://reviews.llvm.org/D52784
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rC344597: [ARM][AArch64] Pass through endian flags to
assembler and linker. (authored by psmith, committed by ).
Changed prior to commit:
https://reviews.llvm.org/D52784?vs=169689=169799#toc
Repository:
nickdesaulniers accepted this revision.
nickdesaulniers added a comment.
This revision is now accepted and ready to land.
Thanks for this patch. With it I was able to link+boot a BE aarch64 Linux
kernel (and a LE aarch64 Linux kernel).
Comment at:
peter.smith updated this revision to Diff 169689.
peter.smith marked 3 inline comments as done.
peter.smith added a comment.
Updated diff to reflect review comments. Main changes are:
- isArmBigEndian always returns false if the target architecture isn't Arm.
- Added tests to make sure "--be8"
peter.smith marked 7 inline comments as done.
peter.smith added a comment.
Thanks very much for the comments. I'll post an update shortly.
Comment at: lib/Driver/ToolChains/Gnu.cpp:357-364
+const char* EndianFlag = "-EL";
+if (isArmBigEndian(Triple, Args)) {
+
nickdesaulniers added inline comments.
Comment at: lib/Driver/ToolChains/Gnu.cpp:357-364
+const char* EndianFlag = "-EL";
+if (isArmBigEndian(Triple, Args)) {
+ EndianFlag = "-EB";
+ arm::appendBE8LinkFlag(Args, CmdArgs, Triple);
+}
+else if (Arch ==
nickdesaulniers added a comment.
Thanks for the addition of the flags to the linker. Interesting note about
`-m*-endian` only being applicable for armv7. Just some minor nits left.
With the current version of the patch, I can now assemble, link, and boot in a
virtualized environment a
peter.smith updated this revision to Diff 169386.
peter.smith added a comment.
I've decided to roll the linker changes in with the assembler ones as the
linker use case affects the design. It turns out that only Arm needs to check
to see if the -mbig-endian and -mlittle-endian flags override
12 matches
Mail list logo