File: README.hppa

package info (click to toggle)
mlton 20210117%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 58,464 kB
  • sloc: ansic: 27,682; sh: 4,455; asm: 3,569; lisp: 2,879; makefile: 2,347; perl: 1,169; python: 191; pascal: 68; javascript: 7
file content (41 lines) | stat: -rw-r--r-- 1,301 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Additions to the instruction set
=====================================
1.  SHnADD[O] instructions, which performs a*(2^n)+b 
2.  Branch on bit instruction (BB)
3.  Single precision floating points + lots of other conversion ops
4.  Loads and stores with scaled indexed and auto increment addressing modes

New optimizations in the HPPA backend
=====================================

1.  An expressions such as a*n+b where n = 2, 4, and 8 now emits SHnADD[O]
    instructions.

2.  An expression such as 

       BCC(T.CMP(T.NE,0,T.ANDB(mask,e))

    where mask is a power of 2 now emits BB instructions.

    SML/NJ: this improves boxity testing code by replacing 3 instructions with 1
            instruction.

3.  Strength reduction for multiplication with small constants. 

    SML/NJ: benefits array indexing and multiway branches

4   Addressing modes computation now takes into account of scaled 
    indexed mode.  Unfortunately, due to tagging this optimizations
    is not used in SML/NJ.

5   Propagation of annotations

6   Delay slot filling has been added

7   NOTB folding has been implemented.  This combines NOTB with other
    bit ops such as ANDB, ORB, XORB.

8.  COND expressions now generate the composite instruction sequence:
   
        COMCLR,cc r1, r2, t
        LDO i(b), t