public inbox for java-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug libgcj/22084] New: Divide_1 test case hangs
@ 2005-06-15 23:03 tromey at gcc dot gnu dot org
  2005-06-17 13:13 ` [Bug libgcj/22084] " rmathew at gcc dot gnu dot org
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-06-15 23:03 UTC (permalink / raw)
  To: java-prs

The Divide_1 test case now apparently hangs, printing:

set_ld_library_path_env_vars:
ld_library_path=.:/home/tromey/gnu/Trunk/build/i686-pc-linux-gnu//libjava/.libs:/home/tromey/gnu/Trunk/build/gcc
0
-2147483648
50354022
GC Warning: Repeated allocation of very large block (appr. size 258048):
        May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 258048):
        May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 258048):
        May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 258048):
        May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 512000):
        May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 258048):
        May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 512000):
        May lead to memory leak and poor performance.

-- 
           Summary: Divide_1 test case hangs
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: libgcj
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: tromey at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu
                    dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
@ 2005-06-17 13:13 ` rmathew at gcc dot gnu dot org
  2005-06-17 13:44 ` dnovillo at redhat dot com
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: rmathew at gcc dot gnu dot org @ 2005-06-17 13:13 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From rmathew at gcc dot gnu dot org  2005-06-17 13:13 -------
Confirmed, though I see a FAIL instead of a hang. It has only started 
appearing this week. It fails like:

  -1459606597
  -2147483648
  335645025
  FAIL: Divide_1 execution - source compiled test

instead of the expected:

  -2147483648
  -2147483648
  0
  0
  [...]

Note that the values are totally off.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-06-17 13:13:47
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
  2005-06-17 13:13 ` [Bug libgcj/22084] " rmathew at gcc dot gnu dot org
@ 2005-06-17 13:44 ` dnovillo at redhat dot com
  2005-06-17 14:41 ` [Bug libgcj/22084] [4.1 Regression] " pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: dnovillo at redhat dot com @ 2005-06-17 13:44 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From dnovillo at redhat dot com  2005-06-17 13:44 -------
Subject: Re:  Divide_1 test case hangs

On Fri, Jun 17, 2005 at 01:13:49PM -0000, rmathew at gcc dot gnu dot org wrote:

>   -2147483648
>   -2147483648
>   0
>   0
>   [...]
> 
> Note that the values are totally off.
> 
This looks somewhat familiar.  Could you try testing with
-fno-tree-vrp?


Diego.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
  2005-06-17 13:13 ` [Bug libgcj/22084] " rmathew at gcc dot gnu dot org
  2005-06-17 13:44 ` dnovillo at redhat dot com
@ 2005-06-17 14:41 ` pinskia at gcc dot gnu dot org
  2005-06-17 17:06 ` tromey at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-06-17 14:41 UTC (permalink / raw)
  To: java-prs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
            Summary|Divide_1 test case hangs    |[4.1 Regression] Divide_1
                   |                            |test case hangs
   Target Milestone|---                         |4.1.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2005-06-17 14:41 ` [Bug libgcj/22084] [4.1 Regression] " pinskia at gcc dot gnu dot org
@ 2005-06-17 17:06 ` tromey at gcc dot gnu dot org
  2005-06-18  5:14 ` rmathew at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-06-17 17:06 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From tromey at gcc dot gnu dot org  2005-06-17 17:05 -------
I can only reproduce this with 'make check'.
When I compile the test case by hand with an installed compiler,
it works.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2005-06-17 17:06 ` tromey at gcc dot gnu dot org
@ 2005-06-18  5:14 ` rmathew at gcc dot gnu dot org
  2005-06-24  9:47 ` rmathew at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: rmathew at gcc dot gnu dot org @ 2005-06-18  5:14 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From rmathew at gcc dot gnu dot org  2005-06-18 05:14 -------
(In reply to comment #2)
> Subject: Re:  Divide_1 test case hangs
> 
> >   -2147483648
> >   -2147483648
> >   0
> >   0
> >   [...]
> > 
> > Note that the values are totally off.
> > 
> This looks somewhat familiar.  Could you try testing with
> -fno-tree-vrp?

Doesn't help. In a weird twist, I actually get the correct
result if I use any optimisation level (-O{1,2,3})! (That,
BTW, explains why the corresponding -O3 testcase didn't fail.)

When I compile this testcase manually and run it (at -O0),
I get:

1219954614
-2147483648
1174405120
12019755
0
Aborted

Under the debugger:
----------------------------- 8< -----------------------------
(gdb) r
Starting program: /home/rmathew/src/tmp/a.out
[Thread debugging using libthread_db enabled]
[New Thread -1225922896 (LWP 28945)]
[New Thread -1226114128 (LWP 28948)]

Program received signal SIGFPE, Arithmetic exception.
[Switching to Thread -1225922896 (LWP 28945)]
0x08048bc4 in Divide_1.probe_1() (this=@4af00) at Divide_1.java:11
11            int c = a/b;
Current language:  auto; currently java
(gdb) l
6
7         void probe_1 ()
8         {
9            try {
10            int a = Integer.parseInt ("-80000000", 16);
11            int c = a/b;
12            System.out.println (c);
13          } catch (Exception _) {
14            System.out.println (_);
15          }
(gdb) c
Continuing.
1488390214
-2147483648

Program received signal SIGFPE, Arithmetic exception.
0x08048dd3 in Divide_1.probe_1() (this=@940004af) at Divide_1.java:27
27            int c = a%b;
(gdb) l
22            System.out.println (_);
23          }
24
25          try {
26            int a = Integer.parseInt ("-80000000", 16);
27            int c = a%b;
28            System.out.println (c);
29          } catch (Exception _) {
30            System.out.println (_);
31          }
(gdb) c
Continuing.
1174405120

Program received signal SIGFPE, Arithmetic exception.
0x08048eed in Divide_1.probe_1() (this=@804a6) at Divide_1.java:35
35            int c = a%b1;
(gdb) l
30            System.out.println (_);
31          }
32
33          try {
34            int a = Integer.parseInt ("-80000000", 16);
35            int c = a%b1;
36            System.out.println (c);
37          } catch (Exception _) {
38            System.out.println (_);
39          }
(gdb) c
Continuing.
12019899
0

Program received signal SIGFPE, Arithmetic exception.
0x0804912a in Divide_1.probe_1() (this=@1e0004af) at Divide_1.java:52
52            int c = a/b;
(gdb) l
47          }
48
49          try {
50            int a = Integer.parseInt ("8000", 16);
51            int b = Integer.parseInt ("0", 16);
52            int c = a/b;
53            System.out.println (c);
54          } catch (Exception _) {
55            System.out.println (_);
56          }
(gdb) c
Continuing.

Program received signal SIGSEGV, Segmentation fault.
uw_frame_state_for (context=0xbfffe6b8, fs=0xbfffe5f8) at linux-unwind.h:125
125       if (*(unsigned short *)(pc+0) == 0xb858
(gdb) p pc
No symbol "pc" in current context.
(gdb) p context->ra
$1 = (void *) 0x62f
(gdb) p *context
$2 = {reg = {0xbffff01c, 0xbffff018, 0xbffff014, 0xbffff4b1, 0x0, 0xbffff008,
    0xbffff004, 0xbffff000, 0xbffff4b5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0}, cfa = 0xbffff4b9, ra = 0x62f, lsda = 0x0, bases = {tbase = 0x0,
    dbase = 0x804bc18, func = 0x8048b86}, args_size = 0}
(gdb) bt
#0  uw_frame_state_for (context=0xbfffe6b8, fs=0xbfffe5f8)
    at linux-unwind.h:125
#1  0xb7fe5632 in _Unwind_Backtrace (
    trace=0xb765d920 <_Jv_StackTrace::UnwindTraceFn(_Unwind_Context*, void*)>,
    trace_argument=0xbfffef30) at unwind.inc:293
#2  0xb765dac0 in _Jv_StackTrace::GetStackTrace ()
    at /extra/src/gcc/gcc-20050618/libjava/stacktrace.cc:159
#3  0xb768e29c in java::lang::VMThrowable::fillInStackTrace ()
    at /extra/src/gcc/gcc-20050618/libjava/java/lang/natVMThrowable.cc:33
#4  0xb7871a52 in java.lang.Throwable.fillInStackTrace() (this=0x4f858)
    at Throwable.java:498
#5  0xb7867532 in java.lang.Throwable.Throwable(java.lang.String) (
    this=0x4f858, message=0x62f) at Throwable.java:159
#6  0xb7869f53 in java.lang.Exception.Exception(java.lang.String) (this=0x62f,
    s=0x62f) at Exception.java:77
#7  0xb7869fe3 in java.lang.RuntimeException.RuntimeException(java.lang.String)
    (this=0x62f, s=0x62f) at RuntimeException.java:75
#8  0xb786c273 in
java.lang.ArithmeticException.ArithmeticException(java.lang.String) (this=0x62f,
s=0x62f) at ArithmeticException.java:74
#9  0xb7650cde in catch_fpe (_dummy=8)
    at /extra/src/gcc/gcc-20050618/libjava/prims.cc:166
#10 <signal handler called>
#11 0x0804912c in Divide_1.probe_1() (this=0x1e0004af) at Divide_1.java:52
---Type <return> to continue, or q <return> to quit---
#12 0x0000062f in ?? ()
#13 0x1e0004af in ?? ()
#14 0x000804a6 in ?? ()
#15 0x940004af in ?? ()
#16 0x08b7d3fa in ?? ()
#17 0x6dbffff5 in ?? ()
#18 0x00b78755 in ?? ()
#19 0x00b7e202 in ?? ()

[...and so on for 733 frames after which GDB 6.3 barfs out.]
----------------------------- 8< -----------------------------

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2005-06-18  5:14 ` rmathew at gcc dot gnu dot org
@ 2005-06-24  9:47 ` rmathew at gcc dot gnu dot org
  2005-07-14 18:50 ` pinskia at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: rmathew at gcc dot gnu dot org @ 2005-06-24  9:47 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From rmathew at gcc dot gnu dot org  2005-06-24 09:47 -------
Today (20050624, IST), it seems to have become worse. Till now
I used to see 2 FAILs, now I see 6 FAILs:

  FAIL: Divide_1 execution - source compiled test
  FAIL: Divide_1 output - gij test
  FAIL: Divide_1 execution - bytecode->native test
  FAIL: Divide_1 -O3 output - source compiled test
  FAIL: Divide_1 output - gij test
  FAIL: Divide_1 -O3 output - bytecode->native test

S.N.A.F.U.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|2005-06-17 13:13:47         |2005-06-24 09:47:12
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2005-06-24  9:47 ` rmathew at gcc dot gnu dot org
@ 2005-07-14 18:50 ` pinskia at gcc dot gnu dot org
  2005-07-28  4:45 ` phython at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-07-14 18:50 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-07-14 18:49 -------
This is most likely just the same problem as PR 22493.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
  BugsThisDependsOn|                            |22493


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2005-07-14 18:50 ` pinskia at gcc dot gnu dot org
@ 2005-07-28  4:45 ` phython at gcc dot gnu dot org
  2005-07-28  4:51 ` phython at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: phython at gcc dot gnu dot org @ 2005-07-28  4:45 UTC (permalink / raw)
  To: java-prs



-- 
Bug 22084 depends on bug 22493, which changed state.

Bug 22493 Summary: [4.1 Regression] with -fwrapv -INT_MIN is still not positive
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22493

           What    |Old Value                   |New Value
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
             Status|NEW                         |ASSIGNED
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2005-07-28  4:45 ` phython at gcc dot gnu dot org
@ 2005-07-28  4:51 ` phython at gcc dot gnu dot org
  2005-07-28  7:45 ` rmathew at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: phython at gcc dot gnu dot org @ 2005-07-28  4:51 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From phython at gcc dot gnu dot org  2005-07-28 04:51 -------
Fixing pr 22493 fixed all the Divide_1 problems on ia64.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2005-07-28  4:51 ` phython at gcc dot gnu dot org
@ 2005-07-28  7:45 ` rmathew at gcc dot gnu dot org
  2005-07-28 17:00 ` pinskia at gcc dot gnu dot org
  2005-09-09 13:05 ` cvs-commit at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: rmathew at gcc dot gnu dot org @ 2005-07-28  7:45 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From rmathew at gcc dot gnu dot org  2005-07-28 07:45 -------
Sorry, but I still see the following failures on
i686-pc-linux-gnu:

  FAIL: Divide_1 execution - source compiled test
  FAIL: Divide_1 execution - bytecode->native test

Interestingly, the "-O3" executions produce the correct
(expected) results.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2005-07-28  7:45 ` rmathew at gcc dot gnu dot org
@ 2005-07-28 17:00 ` pinskia at gcc dot gnu dot org
  2005-09-09 13:05 ` cvs-commit at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-07-28 17:00 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-07-28 17:00 -------
(In reply to comment #8)
> Sorry, but I still see the following failures on
> i686-pc-linux-gnu:

But that is PR 22166.

The orginal problem has been fixed.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug libgcj/22084] [4.1 Regression] Divide_1 test case hangs
  2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2005-07-28 17:00 ` pinskia at gcc dot gnu dot org
@ 2005-09-09 13:05 ` cvs-commit at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-09-09 13:05 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-09-09 13:05 -------
Subject: Bug 22084

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	aph@gcc.gnu.org	2005-09-09 13:05:20

Modified files:
	libjava        : ChangeLog 
	libjava/include: i386-signal.h 

Log message:
	2005-09-08  Andrew Haley  <aph@redhat.com>
	
	PR java/22084
	* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Bump IP by 1 if
	R/M field in instruction is 100.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/ChangeLog.diff?cvsroot=gcc&r1=1.3735&r2=1.3736
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/include/i386-signal.h.diff?cvsroot=gcc&r1=1.19&r2=1.20



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22084


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2005-09-09 13:05 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-06-15 23:03 [Bug libgcj/22084] New: Divide_1 test case hangs tromey at gcc dot gnu dot org
2005-06-17 13:13 ` [Bug libgcj/22084] " rmathew at gcc dot gnu dot org
2005-06-17 13:44 ` dnovillo at redhat dot com
2005-06-17 14:41 ` [Bug libgcj/22084] [4.1 Regression] " pinskia at gcc dot gnu dot org
2005-06-17 17:06 ` tromey at gcc dot gnu dot org
2005-06-18  5:14 ` rmathew at gcc dot gnu dot org
2005-06-24  9:47 ` rmathew at gcc dot gnu dot org
2005-07-14 18:50 ` pinskia at gcc dot gnu dot org
2005-07-28  4:45 ` phython at gcc dot gnu dot org
2005-07-28  4:51 ` phython at gcc dot gnu dot org
2005-07-28  7:45 ` rmathew at gcc dot gnu dot org
2005-07-28 17:00 ` pinskia at gcc dot gnu dot org
2005-09-09 13:05 ` cvs-commit at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).