blob: c32b5ebd2e2f54b69a85bd9d5b8f7af9c312294e (
plain)
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
|
/* PR optimization/11634 */
/* The following code used to ICE in verify_local_live_at_start on
PA when compiled with -O2. The cause was that split_all_insns was
not updating liveness information when deleting no-op moves that
had REG_UNUSED notes. */
/* { dg-do compile { target hppa*-*-* } } */
/* { dg-options "-O2" } */
void *f(void *s);
void H5T_conv_vlen (unsigned long long nelmts, unsigned char *bg_ptr)
{
long long seq_len;
unsigned long long bg_seq_len = 0;
unsigned src_base_size, dst_base_size;
void *tmp_buf = 0;
unsigned tmp_buf_size = 0;
unsigned long long elmtno;
for (elmtno = 0; elmtno < nelmts; elmtno++)
{
unsigned char *tmp = bg_ptr;
bg_seq_len = *tmp;
if (bg_seq_len > 0
&& tmp_buf_size <
(unsigned) (bg_seq_len *
(src_base_size > dst_base_size
? src_base_size
: dst_base_size)))
{
tmp_buf_size =
(unsigned) (bg_seq_len *
(src_base_size > dst_base_size
? src_base_size
: dst_base_size));
}
if (bg_seq_len < seq_len)
f ((unsigned char *) tmp_buf + dst_base_size * bg_seq_len);
}
}
|