View Single Post
Old 09-26-2012, 07:39 PM   #704
Kai771
Just a Noob
Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.Kai771 can program the VCR without an owner's manual.
 
Kai771's Avatar
 
Posts: 145
Karma: 162610
Join Date: Aug 2011
Device: Kindle 3
Quote:
Originally Posted by NiLuJe View Post
@Kai771: Ubuntu defaults to -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16, which would be okay if targeting the K4/K5, but is completely wrong for the K3.
Yes, I realized that instantly thanks to your great advice about gcc -Q -v. That's why the first thing I tried was setting it all in ARM_CFLAGS, as you can see in my previous post. I did forget to check with setting my env though (I knew I forgot something), but unfortunately, setting env didn't help.

I also went through Makefile, and fixed few more places where *FLAGS weren't passed down, but that didn't help either (I might have missed some of them. I'll check again tomorrow. I'm attaching the most recent Makefile that I used).

Quote:
The fact that you ran CS with O3 & Ubuntu without explains the different optimization related flags (all the ones you flaged only in CS with a 1).
Actually, no. I did use -O3 on both. I made a mistake copying the command line I used. (Fixed in my previous post now too). However, I believe they're just optimization options, and don't have anything to do with Segmentation faults/Illegal instruction. Of course, I could be wrong.

Code:
gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) 
COLLECT_GCC_OPTIONS='-O3' '-fno-stack-protector' '-U' '_FORTIFY_SOURCE' '-march=armv6' '-marm' '-mfpu=vfp' '-Q' '-v' '-mfloat-abi=softfp'
Quote:
The two others are because the Ubuntu TC is more recent & defaults to targeting the Cortex family (mvectorize-with-neon-quad), and defaults to Thumb mode instructions (mthumb).
I wasn't sure if Kindle supports thumb mode (I thought not), so that's why I added -marm. I also thought that -mvectorize-with-neon-quad could be the problem, and tried to turn it off with -mno-vectorize-with-neon-quad, but it didn't work (unrecognized). But, seeing it in your options too means that it's probably not it. (Besides, shouldn't it only be meaningful together with -mfpu=neon?)

I don't know if it's relevant, but my Ubunty Linaro won't accept -mtls-dialect=gnu, and I see it in both yours and CS defaults.
Attached Files
File Type: zip Makefile.Ubuntu-Linaro.zip (3.0 KB, 193 views)

Last edited by Kai771; 09-27-2012 at 05:50 AM. Reason: typo
Kai771 is offline   Reply With Quote