Károly Balogh
3a78ff1ee4
m68k: on setjmp/longjmp also save/restore the FPCR register when FPU support is enabled
...
git-svn-id: trunk@38522 -
2018-03-13 23:44:54 +00:00
Károly Balogh
f4a8a29aea
m68k: try to restore compilability with a 3.0 compiler
...
git-svn-id: trunk@37026 -
2017-08-22 09:05:20 +00:00
Károly Balogh
6a856f109e
m68k: made setjmp and longjmp code work when register calling convention is the default
...
git-svn-id: trunk@34826 -
2016-11-06 19:10:47 +00:00
Károly Balogh
7293bb7fdb
m68k: reworked setjmp/longjmp to also save the FPU registers (when compiled with HW FPU support), and to only save the nonvolatile registers
...
git-svn-id: trunk@34785 -
2016-11-05 22:02:50 +00:00
sergei
6bcaa88c3a
* m68k: "or" without suffix is not accepted, must be "or.l"
...
git-svn-id: trunk@28184 -
2014-07-08 18:48:57 +00:00
sergei
cfe13734e0
* m68k: Fixed damage caused by r27573 and r28177:
...
* longjmp: restored loading of function result (d0) which got removed in r28177.
* While at the point, added test for zero, because longjmp must never return zero values.
* Assembler reader: 'fp' refers to frame pointer, not the stack pointer.
git-svn-id: trunk@28183 -
2014-07-08 15:04:54 +00:00
Károly Balogh
f98cd634fb
m68k: reworked/cleaned setjmp/longjmp code to use the movem instruction with register lists
...
git-svn-id: trunk@28177 -
2014-07-06 13:18:56 +00:00
sergei
23a20f0e50
* m68k: fixed setjmp/longjmp:
...
* Data registers have to be saved/restored using 'move.l', because 'move' without suffix assumes 16-bit size.
* setjmp must behave as a regular function w.r.t. removing its argument from the stack.
git-svn-id: trunk@28103 -
2014-07-01 11:46:10 +00:00
Károly Balogh
652d69d145
fixed typo
...
git-svn-id: trunk@23269 -
2013-01-01 02:44:01 +00:00
Károly Balogh
79a0f706de
save/restore FP from A5 on Amiga
...
git-svn-id: trunk@23267 -
2013-01-01 02:27:53 +00:00
svenbarth
e240856e43
* rtl/m68k/setjumph.inc:
...
data registers stored are 1 to 7, not 0 to 7
* rtl/m68k/setjump.inc:
don't use "S" or "value" to reference the parameters as the code generator does not use "sp" instead of "fp" in case of "nostackframe"
restore a0 at the end of setjmp
git-svn-id: trunk@23240 -
2012-12-28 13:00:28 +00:00
pierre
76ba2ea6c7
Save complete register set for setjmp/longjmp
...
git-svn-id: trunk@23174 -
2012-12-18 14:05:52 +00:00
svenbarth
4d1e42e891
rtl/m68k/setjump.inc:
...
* implement "fpc_setjmp" and "fpc_longjmp"
rtl/m68k/m68k.inc:
* add "nostackframe" to "get_frame" and "sptr"
+ add "get_pc_addr"
=> allows stack traces to be displayed correctly
git-svn-id: trunk@22899 -
2012-11-01 16:00:14 +00:00
svenbarth
a266d73409
* rtl/m68k/setjump.inc:
...
correctly dummy out setjump as "d0 <> 0" means that longjmp was executed (and d0 could be set from the calling function)
git-svn-id: trunk@22797 -
2012-10-21 13:56:48 +00:00
florian
24fea58b92
+ initial implementation of iso style gotos in iso mode
...
* made setjmp/longjmp accessible to the compiler by compiler proc, they are used by the iso goto code
git-svn-id: trunk@15711 -
2010-08-05 19:20:46 +00:00
Károly Balogh
572c8430ac
+ more mess to make the skeleton amiga rtl compile
...
git-svn-id: trunk@2393 -
2006-02-01 15:35:33 +00:00
peter
4ace790492
* remove $Log
...
git-svn-id: trunk@231 -
2005-06-07 09:47:55 +00:00
fpc
790a4fe2d3
* log and id tags removed
...
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3
initial import
...
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
peter
9f31783a0a
* old logs removed and tabs fixed
2002-09-07 16:01:16 +00:00
michael
650fbb86aa
+ removed logs
2000-07-13 11:32:24 +00:00
daniel
ec29a31834
* copyright 2000
2000-01-07 16:41:28 +00:00
daniel
a79b4a404b
* copyright 2000 added
2000-01-07 16:32:21 +00:00
michael
11cbb1fd82
+ Initial implementation
1998-07-28 20:36:41 +00:00