* Re: [PATCH] H8/300: sim: testsuite: Use the correct file descriptor for stdout.
2026-08-22 10:44 [PATCH] H8/300: sim: testsuite: Use the correct file descriptor for stdout Jan Dubiec
@ 2026-08-24 10:47 ` Andrew Burgess
0 siblings, 0 replies; 2+ messages in thread
From: Andrew Burgess @ 2026-08-24 10:47 UTC (permalink / raw)
To: Jan Dubiec, gdb-patches; +Cc: Jan Dubiec
Hi Jan,
Thanks for fixing this.
Note: your subject lines ends with a period. The GDB/sim style is to
drop the period from the subject line.
Jan Dubiec <jdx@o2.pl> writes:
> This is obviously a typo, because the file descriptor for stdout is 1 on
> both Linux and Windows. As a result, the test cases returned nothing
> on Windows, i.e. neither "pass" nor "fail". Which, BTW, raises the
> question of why 0 works on Linux. For over 20 years...
On Linux, FDs 0, 1, and 2 are usually all pointing at the same
underlying device which is opened for bi-directional I/O. FD 1 might
get line or block buffering from libc, but once the write actually goes
out to the kernel, it's all going to the same underlying pseudo-terminal
device which is bi-directional.
As a result, writing to stdin will work just fine.
Obviously none of this is true if the parent process goes out of its way
to adjust 0, 1, and 2 prior to exec-ing the simulator. But for normal
use, that's why this is working on Linux.
>
> Signed-off-by: Jan Dubiec <jdx@o2.pl>
Please remove this tag. This has no meaning for GDB/simulator right
now, but might in the future, in which case it would be good to keep the
commit history free of these tags.
You might want to update the commit message to mention why this was
working fine on Linux. But with the subject line period removed, and
the Signed-off-by tag removed:
Approved-By: Andrew Burgess <aburgess@redhat.com>
Thanks,
Andrew
> ---
> sim/testsuite/h8300/testutils.inc | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sim/testsuite/h8300/testutils.inc b/sim/testsuite/h8300/testutils.inc
> index 63d27d45c14..1e2c7c31c7b 100644
> --- a/sim/testsuite/h8300/testutils.inc
> +++ b/sim/testsuite/h8300/testutils.inc
> @@ -85,7 +85,7 @@ _main:
>
> ; Output "pass\n"
> .macro pass
> - mov.w #0, r0 ; fd == stdout
> + mov.w #1, r0 ; fd == stdout
> .if (sim_cpu == h8300)
> mov.w #pass_str, r1 ; buf == "pass\n"
> mov.w #5, r2 ; len == 5
> @@ -98,7 +98,7 @@ _main:
>
> ; Output "fail\n"
> .macro fail
> - mov.w #0, r0 ; fd == stdout
> + mov.w #1, r0 ; fd == stdout
> .if (sim_cpu == h8300)
> mov.w #fail_str, r1 ; buf == "fail\n"
> mov.w #5, r2 ; len == 5
> --
> 2.55.0
^ permalink raw reply [flat|nested] 2+ messages in thread