14 |
|
|
15 |
---------------------------------------------------------------------- |
---------------------------------------------------------------------- |
16 |
Name: Matthias Blume |
Name: Matthias Blume |
17 |
|
Date: 2001/06/15 15:05:00 EDT |
18 |
|
Tag: blume-20010615-sparc |
19 |
|
Description: |
20 |
|
|
21 |
|
The purpose of this update is to provide an implementation of NLFFI |
22 |
|
on Sparc machines. |
23 |
|
|
24 |
|
Here are the changes in detail: |
25 |
|
|
26 |
|
* src/MLRISC/sparc/c-calls/sparc-c-calls.sml is a new file containing |
27 |
|
the Sparc implementation of the c-calls API. |
28 |
|
* The Sparc backend of SML/NJ has been modified to uniformely use %fp |
29 |
|
for accessing the ML frame. Thus, we have a real frame pointer and |
30 |
|
can freely modify %sp without need for an omit-frame-ptr phase. |
31 |
|
The vfp logic in src/compiler/CodeGen/* has been changed to accomodate |
32 |
|
this case. |
33 |
|
* ml-nlffigen has been taught to produce code for different architectures |
34 |
|
and calling conventions. |
35 |
|
* In a way similar to what was done in the x86 case, the Sparc |
36 |
|
backend uses its own specific extension to mltree. (For example, |
37 |
|
it needs to be able to generate UNIMP instructions which are part |
38 |
|
of the calling convention.) |
39 |
|
* ml-nlffi-lib was reorganized to make it more modular (in particular, |
40 |
|
to make it easier to plug in new machine- and os-dependent parts). |
41 |
|
|
42 |
|
There are some other fairly unrelated bug fixes and cleanups as well: |
43 |
|
|
44 |
|
* I further hacked the .cm files for MLRISC tools (like MDLGen) so |
45 |
|
that they properly share their libraries with existing SML/NJ libraries. |
46 |
|
* I fixed a minor cosmetic bug in CM, supressing certain spurious |
47 |
|
follow-up error messages. |
48 |
|
* Updates to CM/CMB documentation. |
49 |
|
|
50 |
|
TODO items: |
51 |
|
|
52 |
|
* MLRISC should use a different register as its asmTemp on the Sparc. |
53 |
|
(The current %o2 is a really bad choice because it is part of the |
54 |
|
calling conventions, so things might interfere in unexpected ways.) |
55 |
|
|
56 |
|
---------------------------------------------------------------------- |
57 |
|
Name: Matthias Blume |
58 |
Date: 2001/06/07 |
Date: 2001/06/07 |
59 |
Tag: blume-20010607-calls |
Tag: blume-20010607-calls |
60 |
Description: |
Description: |