Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.forth > #59085

Re: FP stack

From anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups comp.lang.forth
Subject Re: FP stack
Date 2017-05-11 15:43 +0000
Organization Institut fuer Computersprachen, Technische Universitaet Wien
Message-ID <2017May11.174300@mips.complang.tuwien.ac.at> (permalink)
References (2 earlier) <86ae3a80-ffe1-4a25-a727-908f353587d0@googlegroups.com> <oeujbo$st6$1@gioia.aioe.org> <2017May10.114520@mips.complang.tuwien.ac.at> <of19vg$18o9$1@gioia.aioe.org> <5914662a.90083432@news.eternal-september.org>

Show all headers | View raw


stephen@mpeforth.com (Stephen Pelc) writes:
>There are places in embedded programming where floats and integers are
>the same size. For example, most Cortex-M4Fs and early Cortex-M7s
>only provide 32 bit floats. In this case why waste an extra stack 
>and register on a float stack?

If you cannot afford a register for the FP stack pointer, keep it in
memory.  The result is probably still going to be faster than using
the data stack for FP, for several reasons:

1) No overhead for moving stuff from the integer registers to the FP
registers and back.

2) You can cache the top-of-fp-stack items in fp registers.

3) The separate-stack Forth program will contain fewer stack
manipulation words (just take a look at the faxpy-nostride variants in
this thread).

4) Once you extend your compiler to also be analytical about FP
values, register pressure on the integer registers will decrease even
more (you keep more values in FP registers).

If you take the analytical approach to the extreme, i.e., in PAF (and
if you comply with PAF requirements, i.e., in most code), you get the
same code (including having only one stack pointer, and with FP values
in FP registers and integer values in integer registers) whether the
programmer writes unified-stack or separate-stack code.  In that case
ease of programming makes the separate-stack approach preferable.

- anton
-- 
M. Anton Ertl  http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
     New standard: http://www.forth200x.org/forth200x.html
   EuroForth 2017: http://www.euroforth.org/ef17/

Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-02 15:27 +0100
  Recognizers discussion lehs <skydda.barnen@gmail.com> - 2017-05-02 07:52 -0700
    Re: Recognizers discussion Mark Wills <markwills1970@gmail.com> - 2017-05-02 08:19 -0700
      Re: Recognizers discussion lehs <skydda.barnen@gmail.com> - 2017-05-02 08:27 -0700
    Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-02 19:55 +0100
      Re: Recognizers discussion lehs <skydda.barnen@gmail.com> - 2017-05-03 02:38 -0700
        Re: Recognizers discussion anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-04 15:16 +0000
  Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-02 17:05 +0100
    Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-02 17:23 +0100
      Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-02 17:26 +0100
      Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-02 13:03 -0500
        Re: Recognizers discussion Matthias Trute <matthias.trute@gmail.com> - 2017-05-02 12:44 -0700
          Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-03 04:36 -0500
        Re: Recognizers discussion anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-04 13:28 +0000
          Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-04 09:13 -0500
  Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-02 12:35 -0500
    Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-02 18:53 +0100
      Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-02 13:10 -0500
        Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-02 19:22 +0100
        Re: Recognizers discussion Bernd Paysan <bernd@net2o.de> - 2017-05-02 22:53 +0000
          Re: Recognizers discussion Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-05-03 07:39 +0100
            Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-03 10:58 +0100
            Re: Recognizers discussion anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-04 13:53 +0000
            Re: Recognizers discussion Bernd Paysan <bernd@net2o.de> - 2017-05-06 01:21 +0000
            Re: Recognizers discussion pahihu <pahihu@gmail.com> - 2017-05-06 00:22 -0700
              Re: Recognizers discussion Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-05-06 23:05 +0100
                Re: Recognizers discussion pahihu <pahihu@gmail.com> - 2017-05-06 22:36 -0700
          Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-03 04:38 -0500
            Re: Recognizers discussion minforth@arcor.de - 2017-05-03 04:49 -0700
              Re: Recognizers discussion Mark Wills <markwills1970@gmail.com> - 2017-05-03 05:03 -0700
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-03 09:02 -0500
                Re: Recognizers discussion Mark Wills <markwills1970@gmail.com> - 2017-05-03 07:45 -0700
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-03 11:24 -0500
                Re: Recognizers discussion Mark Wills <markwills1970@gmail.com> - 2017-05-03 09:45 -0700
                Re: Recognizers discussion Raimond Dragomir <raimond.dragomir@gmail.com> - 2017-05-03 10:08 -0700
                Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-09 15:56 +0000
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-03 18:37 +0100
                Re: Recognizers discussion Mark Wills <markwills1970@gmail.com> - 2017-05-03 11:07 -0700
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-03 20:55 +0100
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-04 02:47 -0500
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-04 13:07 +0100
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-04 07:59 -0500
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-04 17:38 +0100
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-04 12:42 -0500
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-04 02:43 -0500
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-04 13:05 +0100
                Re: Recognizers discussion Ron Aaron <rambamist@gmail.com> - 2017-05-04 15:10 +0300
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-04 13:25 +0100
                Re: Recognizers discussion Ron Aaron <rambamist@gmail.com> - 2017-05-04 15:33 +0300
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-04 08:05 -0500
                Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-09 15:54 +0000
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-09 11:10 -0500
                Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-10 11:49 +0000
                Re: Recognizers discussion anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-04 16:14 +0000
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-04 13:02 -0500
                Re: Recognizers discussion Bernd Paysan <bernd@net2o.de> - 2017-05-05 23:29 +0000
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-07 03:56 -0500
                Re: Recognizers discussion Bernd Paysan <bernd@net2o.de> - 2017-05-07 22:42 +0000
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-08 04:08 -0500
                Re: Recognizers discussion Julian Fondren <julian.fondren@gmail.com> - 2017-05-03 08:51 -0700
                Re: Recognizers discussion Mark Wills <markwills1970@gmail.com> - 2017-05-03 09:38 -0700
                Re: Recognizers discussion Julian Fondren <julian.fondren@gmail.com> - 2017-05-03 09:59 -0700
                Re: Recognizers discussion Mark Wills <markwills1970@gmail.com> - 2017-05-03 10:16 -0700
                Re: Recognizers discussion albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-05-03 22:04 +0200
                Re: Recognizers discussion minforth@arcor.de - 2017-05-03 22:09 -0700
                Re: Recognizers discussion Joel Rees <joel.rees@gmail.com> - 2017-05-07 19:50 -0700
                Re: Recognizers discussion "Elizabeth D. Rather" <erather@forth.com> - 2017-05-07 21:33 -1000
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-08 04:12 -0500
                Re: Recognizers discussion Joel Rees <joel.rees@gmail.com> - 2017-05-08 20:21 -0700
                FP stack (was: Recognizers discussion) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-08 12:35 +0000
                Re: FP stack (was: Recognizers discussion) Joel Rees <joel.rees@gmail.com> - 2017-05-08 20:50 -0700
                Re: FP stack Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-09 03:39 -0500
                Re: FP stack Joel Rees <joel.rees@gmail.com> - 2017-05-09 20:59 -0700
                Re: FP stack Julian Fondren <julian.fondren@gmail.com> - 2017-05-10 00:03 -0700
                Re: FP stack Alex <alex@rivadpm.com> - 2017-05-10 08:10 +0100
                Re: FP stack "Elizabeth D. Rather" <erather@forth.com> - 2017-05-09 21:24 -1000
                Re: FP stack Julian Fondren <julian.fondren@gmail.com> - 2017-05-10 00:37 -0700
                Re: FP stack "Elizabeth D. Rather" <erather@forth.com> - 2017-05-09 22:53 -1000
                Re: FP stack Alex <alex@rivadpm.com> - 2017-05-10 08:53 +0100
                Re: FP stack Ron Aaron <rambamist@gmail.com> - 2017-05-10 11:00 +0300
                Re: FP stack Paul Rubin <no.email@nospam.invalid> - 2017-05-10 01:02 -0700
                Re: FP stack Ron Aaron <rambamist@gmail.com> - 2017-05-10 11:06 +0300
                Re: FP stack anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-10 09:58 +0000
                Re: FP stack Ron Aaron <rambamist@gmail.com> - 2017-05-10 14:17 +0300
                Re: FP stack Alex <alex@rivadpm.com> - 2017-05-10 13:09 +0100
                Re: FP stack anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-10 15:05 +0000
                Re: FP stack albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-05-10 11:43 +0200
                Re: FP stack "HAA" <someone@microsoft.com> - 2017-05-10 18:34 +1000
                Re: FP stack anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-10 09:45 +0000
                Re: FP stack "HAA" <someone@microsoft.com> - 2017-05-11 19:13 +1000
                Re: FP stack Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-11 04:50 -0500
                Re: FP stack anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-11 16:18 +0000
                Re: FP stack Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-11 12:12 -0500
                Re: FP stack stephen@mpeforth.com (Stephen Pelc) - 2017-05-11 13:53 +0000
                Re: FP stack anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-11 15:43 +0000
                Re: FP stack Joel Rees <joel.rees@gmail.com> - 2017-05-12 08:48 -0700
                Re: FP stack anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-11 16:31 +0000
                Re: FP stack "Elizabeth D. Rather" <erather@forth.com> - 2017-05-11 10:18 -1000
                Re: FP stack Cecil Bayona <cbayona@cbayona.com> - 2017-05-11 15:37 -0500
                Re: FP stack "Elizabeth D. Rather" <erather@forth.com> - 2017-05-11 17:25 -1000
                Re: FP stack Cecil Bayona <cbayona@cbayona.com> - 2017-05-11 22:55 -0500
                Re: FP stack "HAA" <someone@microsoft.com> - 2017-05-13 14:24 +1000
                Re: FP stack albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-05-13 13:44 +0200
                Re: FP stack Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-10 05:58 -0500
                Re: FP stack (was: Recognizers discussion) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-09 13:50 +0000
                Re: FP stack (was: Recognizers discussion) Joel Rees <joel.rees@gmail.com> - 2017-05-10 00:25 -0700
                Re: FP stack (was: Recognizers discussion) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-10 11:39 +0000
                Re: FP stack (was: Recognizers discussion) Joel Rees <joel.rees@gmail.com> - 2017-05-10 11:49 -0700
                Re: FP stack (was: Recognizers discussion) "HAA" <someone@microsoft.com> - 2017-05-09 21:15 +1000
                Re: Recognizers discussion "HAA" <someone@microsoft.com> - 2017-05-09 14:16 +1000
              Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-03 08:57 -0500
                Re: Recognizers discussion minforth@arcor.de - 2017-05-03 07:54 -0700
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-03 11:30 -0500
                Re: Recognizers discussion Cecil Bayona <cbayona@cbayona.com> - 2017-05-03 14:05 -0500
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-03 18:42 +0100
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-04 02:51 -0500
                Re: Recognizers discussion "HAA" <someone@microsoft.com> - 2017-05-04 22:29 +1000
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-04 13:41 +0100
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-04 09:06 -0500
                Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-15 12:22 +0000
                Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-15 07:36 -0500
                Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-18 21:21 +0000
                Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-18 21:24 +0000
                Re: Recognizers discussion albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-05-04 20:17 +0200
                Re: Recognizers discussion "HAA" <someone@microsoft.com> - 2017-05-05 11:03 +1000
                Re: Recognizers discussion minforth@arcor.de - 2017-05-05 00:16 -0700
                Re: Recognizers discussion JUERGEN <epldfpga@aol.com> - 2017-05-05 13:15 -0700
                Re: Recognizers discussion "HAA" <someone@microsoft.com> - 2017-05-06 16:49 +1000
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-05 21:00 +0100
      Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-09 14:17 +0000
        Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-09 15:46 +0100
          Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-10 11:50 +0000
            Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-10 13:11 +0100
              Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-10 13:49 +0000
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-10 15:57 +0100
                Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-12 14:17 +0000
  Re: Recognizers discussion "Elizabeth D. Rather" <erather@forth.com> - 2017-05-02 09:25 -1000
    Re: Recognizers discussion albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-05-03 01:19 +0200
    Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-05 15:50 +0000
      Re: Recognizers discussion "HAA" <someone@microsoft.com> - 2017-05-08 11:43 +1000
        Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-08 19:17 +0000
          Re: Recognizers discussion anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-09 14:25 +0000
            Re: Recognizers discussion "Elizabeth D. Rather" <erather@forth.com> - 2017-05-09 21:22 -1000
              Re: Recognizers discussion "HAA" <someone@microsoft.com> - 2017-05-13 13:33 +1000
                Re: Recognizers discussion "Elizabeth D. Rather" <erather@forth.com> - 2017-05-12 21:32 -1000
                Re: Recognizers discussion Howerd <howerdo@yahoo.co.uk> - 2017-05-13 07:12 -0700
                Re: Recognizers discussion "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-05-13 14:30 +0000
  Re: Recognizers discussion rickman <gnuarm@gmail.com> - 2017-05-04 11:37 -0400
    Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-04 17:51 +0100
      Re: Recognizers discussion anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-05 07:31 +0000
        Re: Recognizers discussion Lars Brinkhoff <lars.spam@nocrew.org> - 2017-05-05 20:35 +0200
          Re: Recognizers discussion minforth@arcor.de - 2017-05-05 12:27 -0700
          Re: Recognizers discussion Cecil Bayona <cbayona@cbayona.com> - 2017-05-05 15:03 -0500
          Re: Recognizers discussion anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-06 16:26 +0000
            Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-06 18:17 +0100
              Re: Recognizers discussion Brad Eckert <hwfwguy@gmail.com> - 2017-05-06 12:26 -0700
                Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-06 21:39 +0100
            Re: Recognizers discussion Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-07 03:58 -0500
              Re: Recognizers discussion Alex <alex@rivadpm.com> - 2017-05-07 10:39 +0100
                Re: Recognizers discussion Bernd Paysan <bernd@net2o.de> - 2017-05-07 23:39 +0000
                Re: Recognizers discussion Paul Rubin <no.email@nospam.invalid> - 2017-05-07 17:38 -0700
                Re: Recognizers discussion anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-08 13:40 +0000
                Re: Recognizers discussion anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-08 13:25 +0000
                Re: Recognizers discussion Lars Brinkhoff <lars.spam@nocrew.org> - 2017-05-08 16:25 +0200
              Flash (was: Recognizers discussion) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-07 10:51 +0000
                Re: Flash Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-07 08:06 -0500
                Re: Flash anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-07 13:57 +0000
                Re: Flash Lars Brinkhoff <lars.spam@nocrew.org> - 2017-05-07 16:46 +0200
                Re: Flash Alex <alex@rivadpm.com> - 2017-05-07 16:31 +0100
                Re: Flash anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-07 17:16 +0000
                Re: Flash Alex <alex@rivadpm.com> - 2017-05-07 19:18 +0100
                Re: Flash albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-05-07 21:45 +0200
                Re: Flash Matthias Trute <matthias.trute@gmail.com> - 2017-05-07 12:54 -0700
                Re: Flash Alex <alex@rivadpm.com> - 2017-05-07 19:33 +0100
                Re: Flash Raimond Dragomir <raimond.dragomir@gmail.com> - 2017-05-07 08:50 -0700
                Re: Flash anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-05-07 17:21 +0000
    Re: Recognizers discussion Matthias Trute <matthias.trute@gmail.com> - 2017-05-04 10:07 -0700

csiph-web