Forums - broken code for newer Hexagon Tools

3 posts / 0 new
Last post
broken code for newer Hexagon Tools
timofey
Join Date: 3 Mar 15
Posts: 2
Posted: Fri, 2017-01-06 14:44

Hi, 

I'm devleioping hexagon lis for SnapDragon 805 (8084 dev board) using SDK 1.2.2 (with Tools 5.0.14 gcc).

Android jni library invokes my DSP code via FastRPC (also uses adspmsgd library) and works fine. Also works on simulator with main app stub calling my DSP code.

I tried to build and execute code using newer SDKs: 2.0 with Tools 6.4.03 and 3.0 with 7.2.12. Both build lib/app code successfully but crash and reboot when executed on 8084. (Execute correctly on simulator).

Attemps to use SDK 1.2.2 with newer tools (6.4.03 gcc/clang or 7.2.2 clang) failed in the same way.

In contrast, using older tools 5.0.14 with SDK 2.0 and 3.0 produced good results.

 

Any ideas what is different between 5.0.14 and newer tools that causes code crashes ? 

 

P.S. using "-mv5". Building 8084 SO with hexagon_[Release|Debug]_dynamic target libs, building simulator executables with hexagon_[Release|Debug]_v5 target libs. also using -G0 -mG0lib for 8084, -G8 (or -G0 -mG0lib) for simulator.

 
  • Up0
  • Down0
chennak
Join Date: 22 Sep 16
Posts: 78
Posted: Sat, 2017-01-07 22:10

hexagon_Debug_dynamic/hexagon_Release_dyamic in SDK 3.0 uses v60 arch, So it wont work on 8084.

hexagon_Debug_dynamic/hexagon_Release_dyamic in SDK 2.0 uses v5 arch unless you dont have hvx addon installed on your SDK 2.0.

If hvx addon installed then it uses V60 which will not work on 8084.

So SDK 2.0 without hvx addon should work on 8084. Can you confirm are you using hvx addon on 2.0 or not ?

Regards, 

Chenna 

  • Up0
  • Down0
timofey
Join Date: 3 Mar 15
Posts: 2
Posted: Wed, 2017-01-18 14:20

I'm using standard tool installers without any explicitly installed addons on top of it. 

How to check if addon is already included into installer ?

According to SDK 3.0 doc, it supports mv5 (in addition to mv6).

I explicitly specify "-mv5", and it builds on all 3 SDKs. And it runs on all 3 Simulators (with -mv5 option too).

The difference between real 8084 an SIM build is:

8084: -G0 -mG0lib, target = hexagon_[Release|Debug]_ dynamic, building SO

SIM: -G8, target=hexagon_[Release|Debug]_v5, building executable 

Could the problem come from startup/termination code (obj files) that is different and target specific ?

P.S. Host platform: windows.

  • Up0
  • Down0
or Register

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.