Blackfin: fix command line corruption with DEBUG_DOUBLEFAULT
Commit 6b3087c6
(which introduced Blackfin SMP) broke command line passing
when the DEBUG_DOUBLEFAULT config option was enabled. Switch the code to
using a scratch register and not R7 which holds the command line.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
@@ -124,25 +124,25 @@ ENTRY(__start)
|
|||||||
* below
|
* below
|
||||||
*/
|
*/
|
||||||
GET_PDA(p0, r0);
|
GET_PDA(p0, r0);
|
||||||
r7 = [p0 + PDA_RETX];
|
r6 = [p0 + PDA_RETX];
|
||||||
p1.l = _init_saved_retx;
|
p1.l = _init_saved_retx;
|
||||||
p1.h = _init_saved_retx;
|
p1.h = _init_saved_retx;
|
||||||
[p1] = r7;
|
[p1] = r6;
|
||||||
|
|
||||||
r7 = [p0 + PDA_DCPLB];
|
r6 = [p0 + PDA_DCPLB];
|
||||||
p1.l = _init_saved_dcplb_fault_addr;
|
p1.l = _init_saved_dcplb_fault_addr;
|
||||||
p1.h = _init_saved_dcplb_fault_addr;
|
p1.h = _init_saved_dcplb_fault_addr;
|
||||||
[p1] = r7;
|
[p1] = r6;
|
||||||
|
|
||||||
r7 = [p0 + PDA_ICPLB];
|
r6 = [p0 + PDA_ICPLB];
|
||||||
p1.l = _init_saved_icplb_fault_addr;
|
p1.l = _init_saved_icplb_fault_addr;
|
||||||
p1.h = _init_saved_icplb_fault_addr;
|
p1.h = _init_saved_icplb_fault_addr;
|
||||||
[p1] = r7;
|
[p1] = r6;
|
||||||
|
|
||||||
r7 = [p0 + PDA_SEQSTAT];
|
r6 = [p0 + PDA_SEQSTAT];
|
||||||
p1.l = _init_saved_seqstat;
|
p1.l = _init_saved_seqstat;
|
||||||
p1.h = _init_saved_seqstat;
|
p1.h = _init_saved_seqstat;
|
||||||
[p1] = r7;
|
[p1] = r6;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Initialize stack pointer */
|
/* Initialize stack pointer */
|
||||||
|
Reference in New Issue
Block a user