codewarrior HCS12 V3.1 linker bug

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

codewarrior HCS12 V3.1 linker bug

Jump to solution
1,947 Views
Jet
Contributor I
hello
I found, that the linker of Codewarrior for HCS12 V3.1 has a bug.
If the output file (*.sx, *.abs, *.abs.s19, *.abs.phy) becomes shorter (i.e. due to code optimisation) than the previous version, the file is not stripped and last few records of the previous file remains in the new file.
So when using Cyclone Pro with S-Record format, the programmer writes all the records (including the above mentioned "non stripped ones") to the target and thus the code will not run becuase interrup table (and other parts) get corrupt.
Labels (1)
Tags (1)
0 Kudos
1 Solution
619 Views
CrasyCat
Specialist III
Hello
 
This is pretty strange as the IDE is supposed to create a brand new S record file after a build.
 
You need to submit a service request  for that.
 
To log the issue please go to following URL:
    http://www.freescale.com/TechSupport
and click on "Submit a service request"
 
Make sure to attach following information to the SR:
  - A project reproducing the trouble
  - The Installed product information.
       To retrieve that info:
    - Start CodeWarrior
    - Select Help -> About Metrowerks CodeWarrior
    - Click on "Install Products"
    - Click on Save As and save the information to a file,
CrasyCat

View solution in original post

0 Kudos
3 Replies
619 Views
mke_et
Contributor IV
Hmm, I wonder how that is the case?  The ISR table is position dependant and should have embedded location info in the records.  Just having a snippit of something else in there shouldn't matter.
 
That's not to say there's not bugs or other problems.  I just fail to see how it could be the ISR table.
 
Unless you're saying some the 'S' records are corrupted and it just happens to be an ISR entry.
 
0 Kudos
619 Views
Jet
Contributor I
You can simply reproduce this problem.
. Open the ${project}.sx file in the text editor.
. Copy a couple of lines and past it (insert) at begin of this file (to make this file longer)
. append some comment to the last S record
. insert and delete an character in your source file to make sure that will be recompiled
. Make
. open the ${project}.sx file in the text editor

you will found the vector table duplicate and you can found your comment attached to the last record

see the attached file.sx
0 Kudos
620 Views
CrasyCat
Specialist III
Hello
 
This is pretty strange as the IDE is supposed to create a brand new S record file after a build.
 
You need to submit a service request  for that.
 
To log the issue please go to following URL:
    http://www.freescale.com/TechSupport
and click on "Submit a service request"
 
Make sure to attach following information to the SR:
  - A project reproducing the trouble
  - The Installed product information.
       To retrieve that info:
    - Start CodeWarrior
    - Select Help -> About Metrowerks CodeWarrior
    - Click on "Install Products"
    - Click on Save As and save the information to a file,
CrasyCat
0 Kudos