Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
115aaea2
Commit
115aaea2
authored
Nov 17, 2002
by
Richard Henderson
Browse files
Options
Browse Files
Download
Plain Diff
Merge are.twiddle.net:/home/rth/BK/linus-2.5
into are.twiddle.net:/home/rth/BK/axp-2.5
parents
23237a43
baa834ad
Changes
15
Show whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
850 additions
and
844 deletions
+850
-844
MAINTAINERS
MAINTAINERS
+8
-0
arch/alpha/kernel/Makefile
arch/alpha/kernel/Makefile
+1
-1
arch/alpha/kernel/err_common.c
arch/alpha/kernel/err_common.c
+11
-11
arch/alpha/kernel/err_impl.h
arch/alpha/kernel/err_impl.h
+1
-1
arch/alpha/kernel/irq.c
arch/alpha/kernel/irq.c
+1
-1
arch/alpha/kernel/osf_sys.c
arch/alpha/kernel/osf_sys.c
+4
-4
arch/alpha/kernel/pci.c
arch/alpha/kernel/pci.c
+1
-1
arch/alpha/kernel/setup.c
arch/alpha/kernel/setup.c
+18
-22
arch/alpha/kernel/smc37c669.c
arch/alpha/kernel/smc37c669.c
+6
-6
arch/alpha/kernel/smp.c
arch/alpha/kernel/smp.c
+2
-2
arch/alpha/kernel/time.c
arch/alpha/kernel/time.c
+1
-1
arch/alpha/lib/fpreg.c
arch/alpha/lib/fpreg.c
+2
-0
arch/alpha/lib/io.c
arch/alpha/lib/io.c
+6
-6
arch/alpha/mm/init.c
arch/alpha/mm/init.c
+1
-1
include/asm-alpha/xor.h
include/asm-alpha/xor.h
+787
-787
No files found.
MAINTAINERS
View file @
115aaea2
...
@@ -204,6 +204,14 @@ M: Juergen Fischer <fischer@norbit.de>
...
@@ -204,6 +204,14 @@ M: Juergen Fischer <fischer@norbit.de>
L: linux-scsi@vger.kernel.org
L: linux-scsi@vger.kernel.org
S: Maintained
S: Maintained
ALPHA PORT
P: Richard Henderson
M: rth@twiddle.net
S: Odd Fixes for 2.4; Maintained for 2.5.
P: Ivan Kokshaysky
M: ink@jurassic.park.msu.ru
S: Maintained for 2.4; PCI support for 2.5.
APM DRIVER
APM DRIVER
P: Stephen Rothwell
P: Stephen Rothwell
M: sfr@canb.auug.org.au
M: sfr@canb.auug.org.au
...
...
arch/alpha/kernel/Makefile
View file @
115aaea2
...
@@ -34,7 +34,7 @@ obj-y += core_apecs.o core_cia.o core_irongate.o core_lca.o core_mcpcia.o \
...
@@ -34,7 +34,7 @@ obj-y += core_apecs.o core_cia.o core_irongate.o core_lca.o core_mcpcia.o \
sys_alcor.o sys_cabriolet.o sys_dp264.o sys_eb64p.o sys_eiger.o
\
sys_alcor.o sys_cabriolet.o sys_dp264.o sys_eb64p.o sys_eiger.o
\
sys_jensen.o sys_miata.o sys_mikasa.o sys_nautilus.o sys_titan.o
\
sys_jensen.o sys_miata.o sys_mikasa.o sys_nautilus.o sys_titan.o
\
sys_noritake.o sys_rawhide.o sys_ruffian.o sys_rx164.o
\
sys_noritake.o sys_rawhide.o sys_ruffian.o sys_rx164.o
\
sys_sable.o sys_sio.o sys_sx164.o sys_takara.o
sys_rx164.o
\
sys_sable.o sys_sio.o sys_sx164.o sys_takara.o
\
sys_wildfire.o core_wildfire.o irq_pyxis.o
sys_wildfire.o core_wildfire.o irq_pyxis.o
else
else
...
...
arch/alpha/kernel/err_common.c
View file @
115aaea2
...
@@ -34,12 +34,12 @@ static void el_process_subpackets(struct el_subpacket *, int);
...
@@ -34,12 +34,12 @@ static void el_process_subpackets(struct el_subpacket *, int);
* Generic
* Generic
*/
*/
void
void
mchk_dump_mem
(
void
*
data
,
in
t
length
,
char
**
annotation
)
mchk_dump_mem
(
void
*
data
,
size_
t
length
,
char
**
annotation
)
{
{
unsigned
long
*
ldata
=
data
;
unsigned
long
*
ldata
=
data
;
in
t
i
;
size_
t
i
;
for
(
i
=
0
;
(
i
*
sizeof
(
*
ldata
))
<
length
;
i
++
)
{
for
(
i
=
0
;
(
i
*
sizeof
(
*
ldata
))
<
length
;
i
++
)
{
if
(
annotation
&&
!
annotation
[
i
])
if
(
annotation
&&
!
annotation
[
i
])
annotation
=
NULL
;
annotation
=
NULL
;
printk
(
"%s %08x: %016lx %s
\n
"
,
printk
(
"%s %08x: %016lx %s
\n
"
,
...
@@ -624,7 +624,7 @@ el_process_subpackets(struct el_subpacket *header, int packet_count)
...
@@ -624,7 +624,7 @@ el_process_subpackets(struct el_subpacket *header, int packet_count)
subpacket
=
(
struct
el_subpacket
*
)
subpacket
=
(
struct
el_subpacket
*
)
((
unsigned
long
)
header
+
header
->
length
);
((
unsigned
long
)
header
+
header
->
length
);
for
(
i
=
0
;
subpacket
&&
i
<
packet_count
;
i
++
)
{
for
(
i
=
0
;
subpacket
&&
i
<
packet_count
;
i
++
)
{
printk
(
"%sPROCESSING SUBPACKET %d
\n
"
,
err_print_prefix
,
i
);
printk
(
"%sPROCESSING SUBPACKET %d
\n
"
,
err_print_prefix
,
i
);
subpacket
=
el_process_subpacket
(
subpacket
);
subpacket
=
el_process_subpacket
(
subpacket
);
}
}
...
@@ -636,7 +636,7 @@ el_process_subpacket_reg(struct el_subpacket *header)
...
@@ -636,7 +636,7 @@ el_process_subpacket_reg(struct el_subpacket *header)
struct
el_subpacket
*
next
=
NULL
;
struct
el_subpacket
*
next
=
NULL
;
struct
el_subpacket_handler
*
h
=
subpacket_handler_list
;
struct
el_subpacket_handler
*
h
=
subpacket_handler_list
;
for
(;
h
&&
h
->
class
!=
header
->
class
;
h
=
h
->
next
);
for
(;
h
&&
h
->
class
!=
header
->
class
;
h
=
h
->
next
);
if
(
h
)
next
=
h
->
handler
(
header
);
if
(
h
)
next
=
h
->
handler
(
header
);
return
next
;
return
next
;
...
@@ -673,7 +673,7 @@ el_annotate_subpacket(struct el_subpacket *header)
...
@@ -673,7 +673,7 @@ el_annotate_subpacket(struct el_subpacket *header)
struct
el_subpacket_annotation
*
a
;
struct
el_subpacket_annotation
*
a
;
char
**
annotation
=
NULL
;
char
**
annotation
=
NULL
;
for
(
a
=
subpacket_annotation_list
;
a
;
a
=
a
->
next
)
{
for
(
a
=
subpacket_annotation_list
;
a
;
a
=
a
->
next
)
{
if
(
a
->
class
==
header
->
class
&&
if
(
a
->
class
==
header
->
class
&&
a
->
type
==
header
->
type
&&
a
->
type
==
header
->
type
&&
a
->
revision
==
header
->
revision
)
{
a
->
revision
==
header
->
revision
)
{
...
@@ -700,7 +700,7 @@ cdl_process_console_data_log(int cpu, struct percpu_struct *pcpu)
...
@@ -700,7 +700,7 @@ cdl_process_console_data_log(int cpu, struct percpu_struct *pcpu)
"*** Error(s) were logged on a previous boot
\n
"
,
"*** Error(s) were logged on a previous boot
\n
"
,
err_print_prefix
,
cpu
);
err_print_prefix
,
cpu
);
for
(
err
=
0
;
header
&&
(
header
->
class
!=
EL_CLASS__TERMINATION
);
err
++
)
for
(
err
=
0
;
header
&&
(
header
->
class
!=
EL_CLASS__TERMINATION
);
err
++
)
header
=
el_process_subpacket
(
header
);
header
=
el_process_subpacket
(
header
);
/* let the console know it's ok to clear the error(s) at restart */
/* let the console know it's ok to clear the error(s) at restart */
...
@@ -715,9 +715,9 @@ void __init
...
@@ -715,9 +715,9 @@ void __init
cdl_check_console_data_log
(
void
)
cdl_check_console_data_log
(
void
)
{
{
struct
percpu_struct
*
pcpu
;
struct
percpu_struct
*
pcpu
;
int
cpu
;
unsigned
long
cpu
;
for
(
cpu
=
0
;
cpu
<
hwrpb
->
nr_processors
;
cpu
++
)
{
for
(
cpu
=
0
;
cpu
<
hwrpb
->
nr_processors
;
cpu
++
)
{
pcpu
=
(
struct
percpu_struct
*
)
pcpu
=
(
struct
percpu_struct
*
)
((
unsigned
long
)
hwrpb
+
hwrpb
->
processor_offset
((
unsigned
long
)
hwrpb
+
hwrpb
->
processor_offset
+
cpu
*
hwrpb
->
processor_size
);
+
cpu
*
hwrpb
->
processor_size
);
...
@@ -734,7 +734,7 @@ cdl_register_subpacket_annotation(struct el_subpacket_annotation *new)
...
@@ -734,7 +734,7 @@ cdl_register_subpacket_annotation(struct el_subpacket_annotation *new)
if
(
a
==
NULL
)
subpacket_annotation_list
=
new
;
if
(
a
==
NULL
)
subpacket_annotation_list
=
new
;
else
{
else
{
for
(;
a
->
next
!=
NULL
;
a
=
a
->
next
)
{
for
(;
a
->
next
!=
NULL
;
a
=
a
->
next
)
{
if
((
a
->
class
==
new
->
class
&&
a
->
type
==
new
->
type
)
||
if
((
a
->
class
==
new
->
class
&&
a
->
type
==
new
->
type
)
||
a
==
new
)
{
a
==
new
)
{
printk
(
"Attempted to re-register "
printk
(
"Attempted to re-register "
...
@@ -756,7 +756,7 @@ cdl_register_subpacket_handler(struct el_subpacket_handler *new)
...
@@ -756,7 +756,7 @@ cdl_register_subpacket_handler(struct el_subpacket_handler *new)
if
(
h
==
NULL
)
subpacket_handler_list
=
new
;
if
(
h
==
NULL
)
subpacket_handler_list
=
new
;
else
{
else
{
for
(;
h
->
next
!=
NULL
;
h
=
h
->
next
)
{
for
(;
h
->
next
!=
NULL
;
h
=
h
->
next
)
{
if
(
h
->
class
==
new
->
class
||
h
==
new
)
{
if
(
h
->
class
==
new
->
class
||
h
==
new
)
{
printk
(
"Attempted to re-register "
printk
(
"Attempted to re-register "
"subpacket handler
\n
"
);
"subpacket handler
\n
"
);
...
...
arch/alpha/kernel/err_impl.h
View file @
115aaea2
...
@@ -133,7 +133,7 @@ struct el_subpacket_handler {
...
@@ -133,7 +133,7 @@ struct el_subpacket_handler {
*/
*/
extern
char
*
err_print_prefix
;
extern
char
*
err_print_prefix
;
extern
void
mchk_dump_mem
(
void
*
,
in
t
,
char
**
);
extern
void
mchk_dump_mem
(
void
*
,
size_
t
,
char
**
);
extern
void
mchk_dump_logout_frame
(
struct
el_common
*
);
extern
void
mchk_dump_logout_frame
(
struct
el_common
*
);
extern
void
ev7_register_error_handlers
(
void
);
extern
void
ev7_register_error_handlers
(
void
);
extern
void
ev7_machine_check
(
u64
,
u64
,
struct
pt_regs
*
);
extern
void
ev7_machine_check
(
u64
,
u64
,
struct
pt_regs
*
);
...
...
arch/alpha/kernel/irq.c
View file @
115aaea2
...
@@ -252,7 +252,7 @@ parse_hex_value (const char *buffer,
...
@@ -252,7 +252,7 @@ parse_hex_value (const char *buffer,
{
{
unsigned
char
hexnum
[
HEX_DIGITS
];
unsigned
char
hexnum
[
HEX_DIGITS
];
unsigned
long
value
;
unsigned
long
value
;
int
i
;
unsigned
long
i
;
if
(
!
count
)
if
(
!
count
)
return
-
EINVAL
;
return
-
EINVAL
;
...
...
arch/alpha/kernel/osf_sys.c
View file @
115aaea2
...
@@ -103,7 +103,7 @@ struct osf_dirent {
...
@@ -103,7 +103,7 @@ struct osf_dirent {
struct
osf_dirent_callback
{
struct
osf_dirent_callback
{
struct
osf_dirent
*
dirent
;
struct
osf_dirent
*
dirent
;
long
*
basep
;
long
*
basep
;
int
count
;
unsigned
int
count
;
int
error
;
int
error
;
};
};
...
@@ -113,7 +113,7 @@ osf_filldir(void *__buf, const char *name, int namlen, loff_t offset,
...
@@ -113,7 +113,7 @@ osf_filldir(void *__buf, const char *name, int namlen, loff_t offset,
{
{
struct
osf_dirent
*
dirent
;
struct
osf_dirent
*
dirent
;
struct
osf_dirent_callback
*
buf
=
(
struct
osf_dirent_callback
*
)
__buf
;
struct
osf_dirent_callback
*
buf
=
(
struct
osf_dirent_callback
*
)
__buf
;
int
reclen
=
ROUND_UP
(
NAME_OFFSET
(
dirent
)
+
namlen
+
1
);
unsigned
int
reclen
=
ROUND_UP
(
NAME_OFFSET
(
dirent
)
+
namlen
+
1
);
buf
->
error
=
-
EINVAL
;
/* only used if we fail */
buf
->
error
=
-
EINVAL
;
/* only used if we fail */
if
(
reclen
>
buf
->
count
)
if
(
reclen
>
buf
->
count
)
...
@@ -1343,14 +1343,14 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
...
@@ -1343,14 +1343,14 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
if
(
addr
)
{
if
(
addr
)
{
addr
=
arch_get_unmapped_area_1
(
PAGE_ALIGN
(
addr
),
len
,
limit
);
addr
=
arch_get_unmapped_area_1
(
PAGE_ALIGN
(
addr
),
len
,
limit
);
if
(
addr
!=
-
ENOMEM
)
if
(
addr
!=
(
unsigned
long
)
-
ENOMEM
)
return
addr
;
return
addr
;
}
}
/* Next, try allocating at TASK_UNMAPPED_BASE. */
/* Next, try allocating at TASK_UNMAPPED_BASE. */
addr
=
arch_get_unmapped_area_1
(
PAGE_ALIGN
(
TASK_UNMAPPED_BASE
),
addr
=
arch_get_unmapped_area_1
(
PAGE_ALIGN
(
TASK_UNMAPPED_BASE
),
len
,
limit
);
len
,
limit
);
if
(
addr
!=
-
ENOMEM
)
if
(
addr
!=
(
unsigned
long
)
-
ENOMEM
)
return
addr
;
return
addr
;
/* Finally, try allocating in low memory. */
/* Finally, try allocating in low memory. */
...
...
arch/alpha/kernel/pci.c
View file @
115aaea2
...
@@ -474,5 +474,5 @@ int
...
@@ -474,5 +474,5 @@ int
pci_controller_num
(
struct
pci_dev
*
pdev
)
pci_controller_num
(
struct
pci_dev
*
pdev
)
{
{
struct
pci_controller
*
hose
=
pdev
->
sysdata
;
struct
pci_controller
*
hose
=
pdev
->
sysdata
;
return
(
hose
?
hose
->
index
:
-
ENXIO
);
return
(
hose
?
(
int
)
hose
->
index
:
-
ENXIO
);
}
}
arch/alpha/kernel/setup.c
View file @
115aaea2
...
@@ -98,9 +98,11 @@ unsigned char aux_device_present = 0xaa;
...
@@ -98,9 +98,11 @@ unsigned char aux_device_present = 0xaa;
#define N(a) (sizeof(a)/sizeof(a[0]))
#define N(a) (sizeof(a)/sizeof(a[0]))
static
struct
alpha_machine_vector
*
get_sysvec
(
long
,
long
,
long
);
static
struct
alpha_machine_vector
*
get_sysvec
(
unsigned
long
,
unsigned
long
,
unsigned
long
);
static
struct
alpha_machine_vector
*
get_sysvec_byname
(
const
char
*
);
static
struct
alpha_machine_vector
*
get_sysvec_byname
(
const
char
*
);
static
void
get_sysnames
(
long
,
long
,
long
,
char
**
,
char
**
);
static
void
get_sysnames
(
unsigned
long
,
unsigned
long
,
unsigned
long
,
char
**
,
char
**
);
static
char
command_line
[
COMMAND_LINE_SIZE
];
static
char
command_line
[
COMMAND_LINE_SIZE
];
char
saved_command_line
[
COMMAND_LINE_SIZE
];
char
saved_command_line
[
COMMAND_LINE_SIZE
];
...
@@ -202,7 +204,7 @@ reserve_std_resources(void)
...
@@ -202,7 +204,7 @@ reserve_std_resources(void)
};
};
struct
resource
*
io
=
&
ioport_resource
;
struct
resource
*
io
=
&
ioport_resource
;
long
i
;
size_t
i
;
if
(
hose_head
)
{
if
(
hose_head
)
{
struct
pci_controller
*
hose
;
struct
pci_controller
*
hose
;
...
@@ -258,7 +260,7 @@ setup_memory(void *kernel_end)
...
@@ -258,7 +260,7 @@ setup_memory(void *kernel_end)
unsigned
long
start_kernel_pfn
,
end_kernel_pfn
;
unsigned
long
start_kernel_pfn
,
end_kernel_pfn
;
unsigned
long
bootmap_size
,
bootmap_pages
,
bootmap_start
;
unsigned
long
bootmap_size
,
bootmap_pages
,
bootmap_start
;
unsigned
long
start
,
end
;
unsigned
long
start
,
end
;
int
i
;
unsigned
long
i
;
/* Find free clusters, and init and free the bootmem accordingly. */
/* Find free clusters, and init and free the bootmem accordingly. */
memdesc
=
(
struct
memdesc_struct
*
)
memdesc
=
(
struct
memdesc_struct
*
)
...
@@ -327,7 +329,7 @@ setup_memory(void *kernel_end)
...
@@ -327,7 +329,7 @@ setup_memory(void *kernel_end)
}
}
}
}
if
(
bootmap_start
==
-
1
)
{
if
(
bootmap_start
==
~
0UL
)
{
max_low_pfn
>>=
1
;
max_low_pfn
>>=
1
;
goto
try_again
;
goto
try_again
;
}
}
...
@@ -398,7 +400,7 @@ page_is_ram(unsigned long pfn)
...
@@ -398,7 +400,7 @@ page_is_ram(unsigned long pfn)
{
{
struct
memclust_struct
*
cluster
;
struct
memclust_struct
*
cluster
;
struct
memdesc_struct
*
memdesc
;
struct
memdesc_struct
*
memdesc
;
int
i
;
unsigned
long
i
;
memdesc
=
(
struct
memdesc_struct
*
)
memdesc
=
(
struct
memdesc_struct
*
)
(
hwrpb
->
mddt_offset
+
(
unsigned
long
)
hwrpb
);
(
hwrpb
->
mddt_offset
+
(
unsigned
long
)
hwrpb
);
...
@@ -691,7 +693,7 @@ static char tsunami_names[][16] = {
...
@@ -691,7 +693,7 @@ static char tsunami_names[][16] = {
static
int
tsunami_indices
[]
=
{
0
,
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
};
static
int
tsunami_indices
[]
=
{
0
,
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
};
static
struct
alpha_machine_vector
*
__init
static
struct
alpha_machine_vector
*
__init
get_sysvec
(
long
type
,
long
variation
,
long
cpu
)
get_sysvec
(
unsigned
long
type
,
unsigned
long
variation
,
unsigned
long
cpu
)
{
{
static
struct
alpha_machine_vector
*
systype_vecs
[]
__initdata
=
static
struct
alpha_machine_vector
*
systype_vecs
[]
__initdata
=
{
{
...
@@ -798,10 +800,6 @@ get_sysvec(long type, long variation, long cpu)
...
@@ -798,10 +800,6 @@ get_sysvec(long type, long variation, long cpu)
struct
alpha_machine_vector
*
vec
;
struct
alpha_machine_vector
*
vec
;
/* Restore real CABRIO and EB66+ family names, ie EB64+ and EB66 */
if
(
type
<
0
)
type
=
-
type
;
/* Search the system tables first... */
/* Search the system tables first... */
vec
=
NULL
;
vec
=
NULL
;
if
(
type
<
N
(
systype_vecs
))
{
if
(
type
<
N
(
systype_vecs
))
{
...
@@ -818,7 +816,7 @@ get_sysvec(long type, long variation, long cpu)
...
@@ -818,7 +816,7 @@ get_sysvec(long type, long variation, long cpu)
if
(
!
vec
)
{
if
(
!
vec
)
{
/* Member ID is a bit-field. */
/* Member ID is a bit-field. */
long
member
=
(
variation
>>
10
)
&
0x3f
;
unsigned
long
member
=
(
variation
>>
10
)
&
0x3f
;
cpu
&=
0xffffffff
;
/* make it usable */
cpu
&=
0xffffffff
;
/* make it usable */
...
@@ -917,8 +915,9 @@ get_sysvec_byname(const char *name)
...
@@ -917,8 +915,9 @@ get_sysvec_byname(const char *name)
&
xlt_mv
&
xlt_mv
};
};
int
i
,
n
=
sizeof
(
all_vecs
)
/
sizeof
(
*
all_vecs
);
size_t
i
;
for
(
i
=
0
;
i
<
n
;
++
i
)
{
for
(
i
=
0
;
i
<
N
(
all_vecs
);
++
i
)
{
struct
alpha_machine_vector
*
mv
=
all_vecs
[
i
];
struct
alpha_machine_vector
*
mv
=
all_vecs
[
i
];
if
(
strcasecmp
(
mv
->
vector_name
,
name
)
==
0
)
if
(
strcasecmp
(
mv
->
vector_name
,
name
)
==
0
)
return
mv
;
return
mv
;
...
@@ -927,14 +926,10 @@ get_sysvec_byname(const char *name)
...
@@ -927,14 +926,10 @@ get_sysvec_byname(const char *name)
}
}
static
void
static
void
get_sysnames
(
long
type
,
long
variation
,
long
cpu
,
get_sysnames
(
unsigned
long
type
,
unsigned
long
variation
,
unsigned
long
cpu
,
char
**
type_name
,
char
**
variation_name
)
char
**
type_name
,
char
**
variation_name
)
{
{
long
member
;
unsigned
long
member
;
/* Restore real CABRIO and EB66+ family names, ie EB64+ and EB66 */
if
(
type
<
0
)
type
=
-
type
;
/* If not in the tables, make it UNKNOWN,
/* If not in the tables, make it UNKNOWN,
else set type name to family */
else set type name to family */
...
@@ -952,7 +947,7 @@ get_sysnames(long type, long variation, long cpu,
...
@@ -952,7 +947,7 @@ get_sysnames(long type, long variation, long cpu,
return
;
return
;
}
}
/* Set variation to "0"; if variation is zero, done */
/* Set variation to "0"; if variation is zero, done
.
*/
*
variation_name
=
systype_names
[
0
];
*
variation_name
=
systype_names
[
0
];
if
(
variation
==
0
)
{
if
(
variation
==
0
)
{
return
;
return
;
...
@@ -1042,7 +1037,8 @@ static int
...
@@ -1042,7 +1037,8 @@ static int
get_nr_processors
(
struct
percpu_struct
*
cpubase
,
unsigned
long
num
)
get_nr_processors
(
struct
percpu_struct
*
cpubase
,
unsigned
long
num
)
{
{
struct
percpu_struct
*
cpu
;
struct
percpu_struct
*
cpu
;
int
i
,
count
=
0
;
unsigned
long
i
;
int
count
=
0
;
for
(
i
=
0
;
i
<
num
;
i
++
)
{
for
(
i
=
0
;
i
<
num
;
i
++
)
{
cpu
=
(
struct
percpu_struct
*
)
cpu
=
(
struct
percpu_struct
*
)
...
...
arch/alpha/kernel/smc37c669.c
View file @
115aaea2
...
@@ -970,8 +970,8 @@ void SMC37c669_display_device_info(
...
@@ -970,8 +970,8 @@ void SMC37c669_display_device_info(
static
struct
DEVICE_CONFIG
{
static
struct
DEVICE_CONFIG
{
unsigned
int
port1
;
unsigned
int
port1
;
unsigned
int
port2
;
unsigned
int
port2
;
unsigned
int
irq
;
int
irq
;
unsigned
int
drq
;
int
drq
;
}
local_config
[
NUM_FUNCS
];
}
local_config
[
NUM_FUNCS
];
/*
/*
...
@@ -1097,11 +1097,11 @@ static struct DEVICE_CONFIG *SMC37c669_get_config(
...
@@ -1097,11 +1097,11 @@ static struct DEVICE_CONFIG *SMC37c669_get_config(
);
);
static
int
SMC37c669_xlate_irq
(
static
int
SMC37c669_xlate_irq
(
unsigned
int
irq
int
irq
);
);
static
int
SMC37c669_xlate_drq
(
static
int
SMC37c669_xlate_drq
(
unsigned
int
drq
int
drq
);
);
static
spinlock_t
smc_lock
__cacheline_aligned
=
SPIN_LOCK_UNLOCKED
;
static
spinlock_t
smc_lock
__cacheline_aligned
=
SPIN_LOCK_UNLOCKED
;
...
@@ -2260,7 +2260,7 @@ static struct DEVICE_CONFIG * __init SMC37c669_get_config( unsigned int func )
...
@@ -2260,7 +2260,7 @@ static struct DEVICE_CONFIG * __init SMC37c669_get_config( unsigned int func )
**
**
**--
**--
*/
*/
static
int
__init
SMC37c669_xlate_irq
(
unsigned
int
irq
)
static
int
__init
SMC37c669_xlate_irq
(
int
irq
)
{
{
int
i
,
translated_irq
=
-
1
;
int
i
,
translated_irq
=
-
1
;
...
@@ -2312,7 +2312,7 @@ static int __init SMC37c669_xlate_irq ( unsigned int irq )
...
@@ -2312,7 +2312,7 @@ static int __init SMC37c669_xlate_irq ( unsigned int irq )
**
**
**--
**--
*/
*/
static
int
__init
SMC37c669_xlate_drq
(
unsigned
int
drq
)
static
int
__init
SMC37c669_xlate_drq
(
int
drq
)
{
{
int
i
,
translated_drq
=
-
1
;
int
i
,
translated_drq
=
-
1
;
...
...
arch/alpha/kernel/smp.c
View file @
115aaea2
...
@@ -499,7 +499,7 @@ void __init
...
@@ -499,7 +499,7 @@ void __init
setup_smp
(
void
)
setup_smp
(
void
)
{
{
struct
percpu_struct
*
cpubase
,
*
cpu
;
struct
percpu_struct
*
cpubase
,
*
cpu
;
int
i
;
unsigned
long
i
;
if
(
boot_cpuid
!=
0
)
{
if
(
boot_cpuid
!=
0
)
{
printk
(
KERN_WARNING
"SMP: Booting off cpu %d instead of 0?
\n
"
,
printk
(
KERN_WARNING
"SMP: Booting off cpu %d instead of 0?
\n
"
,
...
@@ -516,7 +516,7 @@ setup_smp(void)
...
@@ -516,7 +516,7 @@ setup_smp(void)
((
char
*
)
hwrpb
+
hwrpb
->
processor_offset
);
((
char
*
)
hwrpb
+
hwrpb
->
processor_offset
);
boot_cpu_palrev
=
cpubase
->
pal_revision
;
boot_cpu_palrev
=
cpubase
->
pal_revision
;
for
(
i
=
0
;
i
<
hwrpb
->
nr_processors
;
i
++
)
{
for
(
i
=
0
;
i
<
hwrpb
->
nr_processors
;
i
++
)
{
cpu
=
(
struct
percpu_struct
*
)
cpu
=
(
struct
percpu_struct
*
)
((
char
*
)
cpubase
+
i
*
hwrpb
->
processor_size
);
((
char
*
)
cpubase
+
i
*
hwrpb
->
processor_size
);
if
((
cpu
->
flags
&
0x1cc
)
==
0x1cc
)
{
if
((
cpu
->
flags
&
0x1cc
)
==
0x1cc
)
{
...
...
arch/alpha/kernel/time.c
View file @
115aaea2
...
@@ -316,7 +316,7 @@ time_init(void)
...
@@ -316,7 +316,7 @@ time_init(void)
diff
=
cycle_freq
-
est_cycle_freq
;
diff
=
cycle_freq
-
est_cycle_freq
;
if
(
diff
<
0
)
if
(
diff
<
0
)
diff
=
-
diff
;
diff
=
-
diff
;
if
(
diff
>
one_percent
)
{
if
(
(
unsigned
long
)
diff
>
one_percent
)
{
cycle_freq
=
est_cycle_freq
;
cycle_freq
=
est_cycle_freq
;
printk
(
"HWRPB cycle frequency bogus. "
printk
(
"HWRPB cycle frequency bogus. "
"Estimated %lu Hz
\n
"
,
cycle_freq
);
"Estimated %lu Hz
\n
"
,
cycle_freq
);
...
...
arch/alpha/lib/fpreg.c
View file @
115aaea2
...
@@ -48,6 +48,7 @@ alpha_read_fp_reg (unsigned long reg)
...
@@ -48,6 +48,7 @@ alpha_read_fp_reg (unsigned long reg)
case
29
:
STT
(
29
,
val
);
break
;
case
29
:
STT
(
29
,
val
);
break
;
case
30
:
STT
(
30
,
val
);
break
;
case
30
:
STT
(
30
,
val
);
break
;
case
31
:
STT
(
31
,
val
);
break
;
case
31
:
STT
(
31
,
val
);
break
;
default:
return
0
;
}
}
return
val
;
return
val
;
}
}
...
@@ -141,6 +142,7 @@ alpha_read_fp_reg_s (unsigned long reg)
...
@@ -141,6 +142,7 @@ alpha_read_fp_reg_s (unsigned long reg)
case
29
:
STS
(
29
,
val
);
break
;
case
29
:
STS
(
29
,
val
);
break
;
case
30
:
STS
(
30
,
val
);
break
;
case
30
:
STS
(
30
,
val
);
break
;
case
31
:
STS
(
31
,
val
);
break
;
case
31
:
STS
(
31
,
val
);
break
;
default:
return
0
;
}
}
return
val
;
return
val
;
}
}
...
...
arch/alpha/lib/io.c
View file @
115aaea2
...
@@ -414,7 +414,7 @@ void _memcpy_fromio(void * to, unsigned long from, long count)
...
@@ -414,7 +414,7 @@ void _memcpy_fromio(void * to, unsigned long from, long count)
/* Optimize co-aligned transfers. Everything else gets handled
/* Optimize co-aligned transfers. Everything else gets handled
a byte at a time. */
a byte at a time. */
if
(
count
>=
8
&&
((
long
)
to
&
7
)
==
(
from
&
7
))
{
if
(
count
>=
8
&&
((
unsigned
long
)
to
&
7
)
==
(
from
&
7
))
{
count
-=
8
;
count
-=
8
;
do
{
do
{
*
(
u64
*
)
to
=
__raw_readq
(
from
);
*
(
u64
*
)
to
=
__raw_readq
(
from
);
...
@@ -425,7 +425,7 @@ void _memcpy_fromio(void * to, unsigned long from, long count)
...
@@ -425,7 +425,7 @@ void _memcpy_fromio(void * to, unsigned long from, long count)
count
+=
8
;
count
+=
8
;
}
}
if
(
count
>=
4
&&
((
long
)
to
&
3
)
==
(
from
&
3
))
{
if
(
count
>=
4
&&
((
unsigned
long
)
to
&
3
)
==
(
from
&
3
))
{
count
-=
4
;
count
-=
4
;
do
{
do
{
*
(
u32
*
)
to
=
__raw_readl
(
from
);
*
(
u32
*
)
to
=
__raw_readl
(
from
);
...
@@ -436,7 +436,7 @@ void _memcpy_fromio(void * to, unsigned long from, long count)
...
@@ -436,7 +436,7 @@ void _memcpy_fromio(void * to, unsigned long from, long count)
count
+=
4
;
count
+=
4
;
}
}
if
(
count
>=
2
&&
((
long
)
to
&
1
)
==
(
from
&
1
))
{
if
(
count
>=
2
&&
((
unsigned
long
)
to
&
1
)
==
(
from
&
1
))
{
count
-=
2
;
count
-=
2
;
do
{
do
{
*
(
u16
*
)
to
=
__raw_readw
(
from
);
*
(
u16
*
)
to
=
__raw_readw
(
from
);
...
@@ -465,7 +465,7 @@ void _memcpy_toio(unsigned long to, const void * from, long count)
...
@@ -465,7 +465,7 @@ void _memcpy_toio(unsigned long to, const void * from, long count)
a byte at a time. */
a byte at a time. */
/* FIXME -- align FROM. */
/* FIXME -- align FROM. */
if
(
count
>=
8
&&
(
to
&
7
)
==
((
long
)
from
&
7
))
{
if
(
count
>=
8
&&
(
to
&
7
)
==
((
unsigned
long
)
from
&
7
))
{
count
-=
8
;
count
-=
8
;
do
{
do
{
__raw_writeq
(
*
(
const
u64
*
)
from
,
to
);
__raw_writeq
(
*
(
const
u64
*
)
from
,
to
);
...
@@ -476,7 +476,7 @@ void _memcpy_toio(unsigned long to, const void * from, long count)
...
@@ -476,7 +476,7 @@ void _memcpy_toio(unsigned long to, const void * from, long count)
count
+=
8
;
count
+=
8
;
}
}
if
(
count
>=
4
&&
(
to
&
3
)
==
((
long
)
from
&
3
))
{
if
(
count
>=
4
&&
(
to
&
3
)
==
((
unsigned
long
)
from
&
3
))
{
count
-=
4
;
count
-=
4
;
do
{
do
{
__raw_writel
(
*
(
const
u32
*
)
from
,
to
);
__raw_writel
(
*
(
const
u32
*
)
from
,
to
);
...
@@ -487,7 +487,7 @@ void _memcpy_toio(unsigned long to, const void * from, long count)
...
@@ -487,7 +487,7 @@ void _memcpy_toio(unsigned long to, const void * from, long count)
count
+=
4
;
count
+=
4
;
}
}
if
(
count
>=
2
&&
(
to
&
1
)
==
((
long
)
from
&
1
))
{
if
(
count
>=
2
&&
(
to
&
1
)
==
((
unsigned
long
)
from
&
1
))
{
count
-=
2
;
count
-=
2
;
do
{
do
{
__raw_writew
(
*
(
const
u16
*
)
from
,
to
);
__raw_writew
(
*
(
const
u16
*
)
from
,
to
);
...
...
arch/alpha/mm/init.c
View file @
115aaea2
...
@@ -242,7 +242,7 @@ callback_init(void * kernel_end)
...
@@ -242,7 +242,7 @@ callback_init(void * kernel_end)
if
(
alpha_using_srm
)
{
if
(
alpha_using_srm
)
{
static
struct
vm_struct
console_remap_vm
;
static
struct
vm_struct
console_remap_vm
;
unsigned
long
vaddr
=
VMALLOC_START
;
unsigned
long
vaddr
=
VMALLOC_START
;
long
i
,
j
;
unsigned
long
i
,
j
;
/* Set up the third level PTEs and update the virtual
/* Set up the third level PTEs and update the virtual
addresses of the CRB entries. */
addresses of the CRB entries. */
...
...
include/asm-alpha/xor.h
View file @
115aaea2
...
@@ -32,793 +32,793 @@ extern void xor_alpha_prefetch_5(unsigned long, unsigned long *,
...
@@ -32,793 +32,793 @@ extern void xor_alpha_prefetch_5(unsigned long, unsigned long *,
unsigned
long
*
,
unsigned
long
*
,
unsigned
long
*
,
unsigned
long
*
,
unsigned
long
*
,
unsigned
long
*
);
unsigned
long
*
,
unsigned
long
*
);
asm
(
"
asm
(
"
\n
\
.text
.text
\n
\
.align 3
.align 3
\n
\
.ent xor_alpha_2
.ent xor_alpha_2
\n
\
xor_alpha_2:
xor_alpha_2:
\n
\
.prologue 0
.prologue 0
\n
\
srl $16, 6, $16
srl $16, 6, $16
\n
\
.align 4
.align 4
\n
\
2:
2:
\n
\
ldq $0,0($17)
ldq $0,0($17)
\n
\
ldq $1,0($18)
ldq $1,0($18)
\n
\
ldq $2,8($17)
ldq $2,8($17)
\n
\
ldq $3,8($18)
ldq $3,8($18)
\n
\
\n
\
ldq $4,16($17)
ldq $4,16($17)
\n
\
ldq $5,16($18)
ldq $5,16($18)
\n
\
ldq $6,24($17)
ldq $6,24($17)
\n
\
ldq $7,24($18)
ldq $7,24($18)
\n
\
\n
\
ldq $19,32($17)
ldq $19,32($17)
\n
\
ldq $20,32($18)
ldq $20,32($18)
\n
\
ldq $21,40($17)
ldq $21,40($17)
\n
\
ldq $22,40($18)
ldq $22,40($18)
\n
\
\n
\
ldq $23,48($17)
ldq $23,48($17)
\n
\
ldq $24,48($18)
ldq $24,48($18)
\n
\
ldq $25,56($17)
ldq $25,56($17)
\n
\
xor $0,$1,$0 # 7 cycles from $1 load
xor $0,$1,$0 # 7 cycles from $1 load
\n
\
\n
\
ldq $27,56($18)
ldq $27,56($18)
\n
\
xor $2,$3,$2
xor $2,$3,$2
\n
\
stq $0,0($17)
stq $0,0($17)
\n
\
xor $4,$5,$4
xor $4,$5,$4
\n
\
\n
\
stq $2,8($17)
stq $2,8($17)
\n
\
xor $6,$7,$6
xor $6,$7,$6
\n
\
stq $4,16($17)
stq $4,16($17)
\n
\
xor $19,$20,$19
xor $19,$20,$19
\n
\
\n
\
stq $6,24($17)
stq $6,24($17)
\n
\
xor $21,$22,$21
xor $21,$22,$21
\n
\
stq $19,32($17)
stq $19,32($17)
\n
\
xor $23,$24,$23
xor $23,$24,$23
\n
\
\n
\
stq $21,40($17)
stq $21,40($17)
\n
\
xor $25,$27,$25
xor $25,$27,$25
\n
\
stq $23,48($17)
stq $23,48($17)
\n
\
subq $16,1,$16
subq $16,1,$16
\n
\
\n
\
stq $25,56($17)
stq $25,56($17)
\n
\
addq $17,64,$17
addq $17,64,$17
\n
\
addq $18,64,$18
addq $18,64,$18
\n
\
bgt $16,2b
bgt $16,2b
\n
\
\n
\
ret
ret
\n
\
.end xor_alpha_2
.end xor_alpha_2
\n
\
\n
\
.align 3
.align 3
\n
\
.ent xor_alpha_3
.ent xor_alpha_3
\n
\
xor_alpha_3:
xor_alpha_3:
\n
\
.prologue 0
.prologue 0
\n
\
srl $16, 6, $16
srl $16, 6, $16
\n
\
.align 4
.align 4
\n
\
3:
3:
\n
\
ldq $0,0($17)
ldq $0,0($17)
\n
\
ldq $1,0($18)
ldq $1,0($18)
\n
\
ldq $2,0($19)
ldq $2,0($19)
\n
\
ldq $3,8($17)
ldq $3,8($17)
\n
\
\n
\
ldq $4,8($18)
ldq $4,8($18)
\n
\
ldq $6,16($17)
ldq $6,16($17)
\n
\
ldq $7,16($18)
ldq $7,16($18)
\n
\
ldq $21,24($17)
ldq $21,24($17)
\n
\
\n
\
ldq $22,24($18)
ldq $22,24($18)
\n
\
ldq $24,32($17)
ldq $24,32($17)
\n
\
ldq $25,32($18)
ldq $25,32($18)
\n
\
ldq $5,8($19)
ldq $5,8($19)
\n
\
\n
\
ldq $20,16($19)
ldq $20,16($19)
\n
\
ldq $23,24($19)
ldq $23,24($19)
\n
\
ldq $27,32($19)
ldq $27,32($19)
\n
\
nop
nop
\n
\
\n
\
xor $0,$1,$1 # 8 cycles from $0 load
xor $0,$1,$1 # 8 cycles from $0 load
\n
\
xor $3,$4,$4 # 6 cycles from $4 load
xor $3,$4,$4 # 6 cycles from $4 load
\n
\
xor $6,$7,$7 # 6 cycles from $7 load
xor $6,$7,$7 # 6 cycles from $7 load
\n
\
xor $21,$22,$22 # 5 cycles from $22 load
xor $21,$22,$22 # 5 cycles from $22 load
\n
\
\n
\
xor $1,$2,$2 # 9 cycles from $2 load
xor $1,$2,$2 # 9 cycles from $2 load
\n
\
xor $24,$25,$25 # 5 cycles from $25 load
xor $24,$25,$25 # 5 cycles from $25 load
\n
\
stq $2,0($17)
stq $2,0($17)
\n
\
xor $4,$5,$5 # 6 cycles from $5 load
xor $4,$5,$5 # 6 cycles from $5 load
\n
\
\n
\
stq $5,8($17)
stq $5,8($17)
\n
\
xor $7,$20,$20 # 7 cycles from $20 load
xor $7,$20,$20 # 7 cycles from $20 load
\n
\
stq $20,16($17)
stq $20,16($17)
\n
\
xor $22,$23,$23 # 7 cycles from $23 load
xor $22,$23,$23 # 7 cycles from $23 load
\n
\
\n
\
stq $23,24($17)
stq $23,24($17)
\n
\
xor $25,$27,$27 # 7 cycles from $27 load
xor $25,$27,$27 # 7 cycles from $27 load
\n
\
stq $27,32($17)
stq $27,32($17)
\n
\
nop
nop
\n
\
\n
\
ldq $0,40($17)
ldq $0,40($17)
\n
\
ldq $1,40($18)
ldq $1,40($18)
\n
\
ldq $3,48($17)
ldq $3,48($17)
\n
\
ldq $4,48($18)
ldq $4,48($18)
\n
\
\n
\
ldq $6,56($17)
ldq $6,56($17)
\n
\
ldq $7,56($18)
ldq $7,56($18)
\n
\
ldq $2,40($19)
ldq $2,40($19)
\n
\
ldq $5,48($19)
ldq $5,48($19)
\n
\
\n
\
ldq $20,56($19)
ldq $20,56($19)
\n
\
xor $0,$1,$1 # 4 cycles from $1 load
xor $0,$1,$1 # 4 cycles from $1 load
\n
\
xor $3,$4,$4 # 5 cycles from $4 load
xor $3,$4,$4 # 5 cycles from $4 load
\n
\
xor $6,$7,$7 # 5 cycles from $7 load
xor $6,$7,$7 # 5 cycles from $7 load
\n
\
\n
\
xor $1,$2,$2 # 4 cycles from $2 load
xor $1,$2,$2 # 4 cycles from $2 load
\n
\
xor $4,$5,$5 # 5 cycles from $5 load
xor $4,$5,$5 # 5 cycles from $5 load
\n
\
stq $2,40($17)
stq $2,40($17)
\n
\
xor $7,$20,$20 # 4 cycles from $20 load
xor $7,$20,$20 # 4 cycles from $20 load
\n
\
\n
\
stq $5,48($17)
stq $5,48($17)
\n
\
subq $16,1,$16
subq $16,1,$16
\n
\
stq $20,56($17)
stq $20,56($17)
\n
\
addq $19,64,$19
addq $19,64,$19
\n
\
\n
\
addq $18,64,$18
addq $18,64,$18
\n
\
addq $17,64,$17
addq $17,64,$17
\n
\
bgt $16,3b
bgt $16,3b
\n
\
ret
ret
\n
\
.end xor_alpha_3
.end xor_alpha_3
\n
\
\n
\
.align 3
.align 3
\n
\
.ent xor_alpha_4
.ent xor_alpha_4
\n
\
xor_alpha_4:
xor_alpha_4:
\n
\
.prologue 0
.prologue 0
\n
\
srl $16, 6, $16
srl $16, 6, $16
\n
\
.align 4
.align 4
\n
\
4:
4:
\n
\
ldq $0,0($17)
ldq $0,0($17)
\n
\
ldq $1,0($18)
ldq $1,0($18)
\n
\
ldq $2,0($19)
ldq $2,0($19)
\n
\
ldq $3,0($20)
ldq $3,0($20)
\n
\
\n
\
ldq $4,8($17)
ldq $4,8($17)
\n
\
ldq $5,8($18)
ldq $5,8($18)
\n
\
ldq $6,8($19)
ldq $6,8($19)
\n
\
ldq $7,8($20)
ldq $7,8($20)
\n
\
\n
\
ldq $21,16($17)
ldq $21,16($17)
\n
\
ldq $22,16($18)
ldq $22,16($18)
\n
\
ldq $23,16($19)
ldq $23,16($19)
\n
\
ldq $24,16($20)
ldq $24,16($20)
\n
\
\n
\
ldq $25,24($17)
ldq $25,24($17)
\n
\
xor $0,$1,$1 # 6 cycles from $1 load
xor $0,$1,$1 # 6 cycles from $1 load
\n
\
ldq $27,24($18)
ldq $27,24($18)
\n
\
xor $2,$3,$3 # 6 cycles from $3 load
xor $2,$3,$3 # 6 cycles from $3 load
\n
\
\n
\
ldq $0,24($19)
ldq $0,24($19)
\n
\
xor $1,$3,$3
xor $1,$3,$3
\n
\
ldq $1,24($20)
ldq $1,24($20)
\n
\
xor $4,$5,$5 # 7 cycles from $5 load
xor $4,$5,$5 # 7 cycles from $5 load
\n
\
\n
\
stq $3,0($17)
stq $3,0($17)
\n
\
xor $6,$7,$7
xor $6,$7,$7
\n
\
xor $21,$22,$22 # 7 cycles from $22 load
xor $21,$22,$22 # 7 cycles from $22 load
\n
\
xor $5,$7,$7
xor $5,$7,$7
\n
\
\n
\
stq $7,8($17)
stq $7,8($17)
\n
\
xor $23,$24,$24 # 7 cycles from $24 load
xor $23,$24,$24 # 7 cycles from $24 load
\n
\
ldq $2,32($17)
ldq $2,32($17)
\n
\
xor $22,$24,$24
xor $22,$24,$24
\n
\
\n
\
ldq $3,32($18)
ldq $3,32($18)
\n
\
ldq $4,32($19)
ldq $4,32($19)
\n
\
ldq $5,32($20)
ldq $5,32($20)
\n
\
xor $25,$27,$27 # 8 cycles from $27 load
xor $25,$27,$27 # 8 cycles from $27 load
\n
\
\n
\
ldq $6,40($17)
ldq $6,40($17)
\n
\
ldq $7,40($18)
ldq $7,40($18)
\n
\
ldq $21,40($19)
ldq $21,40($19)
\n
\
ldq $22,40($20)
ldq $22,40($20)
\n
\
\n
\
stq $24,16($17)
stq $24,16($17)
\n
\
xor $0,$1,$1 # 9 cycles from $1 load
xor $0,$1,$1 # 9 cycles from $1 load
\n
\
xor $2,$3,$3 # 5 cycles from $3 load
xor $2,$3,$3 # 5 cycles from $3 load
\n
\
xor $27,$1,$1
xor $27,$1,$1
\n
\
\n
\
stq $1,24($17)
stq $1,24($17)
\n
\
xor $4,$5,$5 # 5 cycles from $5 load
xor $4,$5,$5 # 5 cycles from $5 load
\n
\
ldq $23,48($17)
ldq $23,48($17)
\n
\
ldq $24,48($18)
ldq $24,48($18)
\n
\
\n
\
ldq $25,48($19)
ldq $25,48($19)
\n
\
xor $3,$5,$5
xor $3,$5,$5
\n
\
ldq $27,48($20)
ldq $27,48($20)
\n
\
ldq $0,56($17)
ldq $0,56($17)
\n
\
\n
\
ldq $1,56($18)
ldq $1,56($18)
\n
\
ldq $2,56($19)
ldq $2,56($19)
\n
\
xor $6,$7,$7 # 8 cycles from $6 load
xor $6,$7,$7 # 8 cycles from $6 load
\n
\
ldq $3,56($20)
ldq $3,56($20)
\n
\
\n
\
stq $5,32($17)
stq $5,32($17)
\n
\
xor $21,$22,$22 # 8 cycles from $22 load
xor $21,$22,$22 # 8 cycles from $22 load
\n
\
xor $7,$22,$22
xor $7,$22,$22
\n
\
xor $23,$24,$24 # 5 cycles from $24 load
xor $23,$24,$24 # 5 cycles from $24 load
\n
\
\n
\
stq $22,40($17)
stq $22,40($17)
\n
\
xor $25,$27,$27 # 5 cycles from $27 load
xor $25,$27,$27 # 5 cycles from $27 load
\n
\
xor $24,$27,$27
xor $24,$27,$27
\n
\
xor $0,$1,$1 # 5 cycles from $1 load
xor $0,$1,$1 # 5 cycles from $1 load
\n
\
\n
\
stq $27,48($17)
stq $27,48($17)
\n
\
xor $2,$3,$3 # 4 cycles from $3 load
xor $2,$3,$3 # 4 cycles from $3 load
\n
\
xor $1,$3,$3
xor $1,$3,$3
\n
\
subq $16,1,$16
subq $16,1,$16
\n
\
\n
\
stq $3,56($17)
stq $3,56($17)
\n
\
addq $20,64,$20
addq $20,64,$20
\n
\
addq $19,64,$19
addq $19,64,$19
\n
\
addq $18,64,$18
addq $18,64,$18
\n
\
\n
\
addq $17,64,$17
addq $17,64,$17
\n
\
bgt $16,4b
bgt $16,4b
\n
\
ret
ret
\n
\
.end xor_alpha_4
.end xor_alpha_4
\n
\
\n
\
.align 3
.align 3
\n
\
.ent xor_alpha_5
.ent xor_alpha_5
\n
\
xor_alpha_5:
xor_alpha_5:
\n
\
.prologue 0
.prologue 0
\n
\
srl $16, 6, $16
srl $16, 6, $16
\n
\
.align 4
.align 4
\n
\
5:
5:
\n
\
ldq $0,0($17)
ldq $0,0($17)
\n
\
ldq $1,0($18)
ldq $1,0($18)
\n
\
ldq $2,0($19)
ldq $2,0($19)
\n
\
ldq $3,0($20)
ldq $3,0($20)
\n
\
\n
\
ldq $4,0($21)
ldq $4,0($21)
\n
\
ldq $5,8($17)
ldq $5,8($17)
\n
\
ldq $6,8($18)
ldq $6,8($18)
\n
\
ldq $7,8($19)
ldq $7,8($19)
\n
\
\n
\
ldq $22,8($20)
ldq $22,8($20)
\n
\
ldq $23,8($21)
ldq $23,8($21)
\n
\
ldq $24,16($17)
ldq $24,16($17)
\n
\
ldq $25,16($18)
ldq $25,16($18)
\n
\
\n
\
ldq $27,16($19)
ldq $27,16($19)
\n
\
xor $0,$1,$1 # 6 cycles from $1 load
xor $0,$1,$1 # 6 cycles from $1 load
\n
\
ldq $28,16($20)
ldq $28,16($20)
\n
\
xor $2,$3,$3 # 6 cycles from $3 load
xor $2,$3,$3 # 6 cycles from $3 load
\n
\
\n
\
ldq $0,16($21)
ldq $0,16($21)
\n
\
xor $1,$3,$3
xor $1,$3,$3
\n
\
ldq $1,24($17)
ldq $1,24($17)
\n
\
xor $3,$4,$4 # 7 cycles from $4 load
xor $3,$4,$4 # 7 cycles from $4 load
\n
\
\n
\
stq $4,0($17)
stq $4,0($17)
\n
\
xor $5,$6,$6 # 7 cycles from $6 load
xor $5,$6,$6 # 7 cycles from $6 load
\n
\
xor $7,$22,$22 # 7 cycles from $22 load
xor $7,$22,$22 # 7 cycles from $22 load
\n
\
xor $6,$23,$23 # 7 cycles from $23 load
xor $6,$23,$23 # 7 cycles from $23 load
\n
\
\n
\
ldq $2,24($18)
ldq $2,24($18)
\n
\
xor $22,$23,$23
xor $22,$23,$23
\n
\
ldq $3,24($19)
ldq $3,24($19)
\n
\
xor $24,$25,$25 # 8 cycles from $25 load
xor $24,$25,$25 # 8 cycles from $25 load
\n
\
\n
\
stq $23,8($17)
stq $23,8($17)
\n
\
xor $25,$27,$27 # 8 cycles from $27 load
xor $25,$27,$27 # 8 cycles from $27 load
\n
\
ldq $4,24($20)
ldq $4,24($20)
\n
\
xor $28,$0,$0 # 7 cycles from $0 load
xor $28,$0,$0 # 7 cycles from $0 load
\n
\
\n
\
ldq $5,24($21)
ldq $5,24($21)
\n
\
xor $27,$0,$0
xor $27,$0,$0
\n
\
ldq $6,32($17)
ldq $6,32($17)
\n
\
ldq $7,32($18)
ldq $7,32($18)
\n
\
\n
\
stq $0,16($17)
stq $0,16($17)
\n
\
xor $1,$2,$2 # 6 cycles from $2 load
xor $1,$2,$2 # 6 cycles from $2 load
\n
\
ldq $22,32($19)
ldq $22,32($19)
\n
\
xor $3,$4,$4 # 4 cycles from $4 load
xor $3,$4,$4 # 4 cycles from $4 load
\n
\
\n
\
ldq $23,32($20)
ldq $23,32($20)
\n
\
xor $2,$4,$4
xor $2,$4,$4
\n
\
ldq $24,32($21)
ldq $24,32($21)
\n
\
ldq $25,40($17)
ldq $25,40($17)
\n
\
\n
\
ldq $27,40($18)
ldq $27,40($18)
\n
\
ldq $28,40($19)
ldq $28,40($19)
\n
\
ldq $0,40($20)
ldq $0,40($20)
\n
\
xor $4,$5,$5 # 7 cycles from $5 load
xor $4,$5,$5 # 7 cycles from $5 load
\n
\
\n
\
stq $5,24($17)
stq $5,24($17)
\n
\
xor $6,$7,$7 # 7 cycles from $7 load
xor $6,$7,$7 # 7 cycles from $7 load
\n
\
ldq $1,40($21)
ldq $1,40($21)
\n
\
ldq $2,48($17)
ldq $2,48($17)
\n
\
\n
\
ldq $3,48($18)
ldq $3,48($18)
\n
\
xor $7,$22,$22 # 7 cycles from $22 load
xor $7,$22,$22 # 7 cycles from $22 load
\n
\
ldq $4,48($19)
ldq $4,48($19)
\n
\
xor $23,$24,$24 # 6 cycles from $24 load
xor $23,$24,$24 # 6 cycles from $24 load
\n
\
\n
\
ldq $5,48($20)
ldq $5,48($20)
\n
\
xor $22,$24,$24
xor $22,$24,$24
\n
\
ldq $6,48($21)
ldq $6,48($21)
\n
\
xor $25,$27,$27 # 7 cycles from $27 load
xor $25,$27,$27 # 7 cycles from $27 load
\n
\
\n
\
stq $24,32($17)
stq $24,32($17)
\n
\
xor $27,$28,$28 # 8 cycles from $28 load
xor $27,$28,$28 # 8 cycles from $28 load
\n
\
ldq $7,56($17)
ldq $7,56($17)
\n
\
xor $0,$1,$1 # 6 cycles from $1 load
xor $0,$1,$1 # 6 cycles from $1 load
\n
\
\n
\
ldq $22,56($18)
ldq $22,56($18)
\n
\
ldq $23,56($19)
ldq $23,56($19)
\n
\
ldq $24,56($20)
ldq $24,56($20)
\n
\
ldq $25,56($21)
ldq $25,56($21)
\n
\
\n
\
xor $28,$1,$1
xor $28,$1,$1
\n
\
xor $2,$3,$3 # 9 cycles from $3 load
xor $2,$3,$3 # 9 cycles from $3 load
\n
\
xor $3,$4,$4 # 9 cycles from $4 load
xor $3,$4,$4 # 9 cycles from $4 load
\n
\
xor $5,$6,$6 # 8 cycles from $6 load
xor $5,$6,$6 # 8 cycles from $6 load
\n
\
\n
\
stq $1,40($17)
stq $1,40($17)
\n
\
xor $4,$6,$6
xor $4,$6,$6
\n
\
xor $7,$22,$22 # 7 cycles from $22 load
xor $7,$22,$22 # 7 cycles from $22 load
\n
\
xor $23,$24,$24 # 6 cycles from $24 load
xor $23,$24,$24 # 6 cycles from $24 load
\n
\
\n
\
stq $6,48($17)
stq $6,48($17)
\n
\
xor $22,$24,$24
xor $22,$24,$24
\n
\
subq $16,1,$16
subq $16,1,$16
\n
\
xor $24,$25,$25 # 8 cycles from $25 load
xor $24,$25,$25 # 8 cycles from $25 load
\n
\
\n
\
stq $25,56($17)
stq $25,56($17)
\n
\
addq $21,64,$21
addq $21,64,$21
\n
\
addq $20,64,$20
addq $20,64,$20
\n
\
addq $19,64,$19
addq $19,64,$19
\n
\
\n
\
addq $18,64,$18
addq $18,64,$18
\n
\
addq $17,64,$17
addq $17,64,$17
\n
\
bgt $16,5b
bgt $16,5b
\n
\
ret
ret
\n
\
.end xor_alpha_5
.end xor_alpha_5
\n
\
\n
\
.align 3
.align 3
\n
\
.ent xor_alpha_prefetch_2
.ent xor_alpha_prefetch_2
\n
\
xor_alpha_prefetch_2:
xor_alpha_prefetch_2:
\n
\
.prologue 0
.prologue 0
\n
\
srl $16, 6, $16
srl $16, 6, $16
\n
\
\n
\
ldq $31, 0($17)
ldq $31, 0($17)
\n
\
ldq $31, 0($18)
ldq $31, 0($18)
\n
\
\n
\
ldq $31, 64($17)
ldq $31, 64($17)
\n
\
ldq $31, 64($18)
ldq $31, 64($18)
\n
\
\n
\
ldq $31, 128($17)
ldq $31, 128($17)
\n
\
ldq $31, 128($18)
ldq $31, 128($18)
\n
\
\n
\
ldq $31, 192($17)
ldq $31, 192($17)
\n
\
ldq $31, 192($18)
ldq $31, 192($18)
\n
\
.align 4
.align 4
\n
\
2:
2:
\n
\
ldq $0,0($17)
ldq $0,0($17)
\n
\
ldq $1,0($18)
ldq $1,0($18)
\n
\
ldq $2,8($17)
ldq $2,8($17)
\n
\
ldq $3,8($18)
ldq $3,8($18)
\n
\
\n
\
ldq $4,16($17)
ldq $4,16($17)
\n
\
ldq $5,16($18)
ldq $5,16($18)
\n
\
ldq $6,24($17)
ldq $6,24($17)
\n
\
ldq $7,24($18)
ldq $7,24($18)
\n
\
\n
\
ldq $19,32($17)
ldq $19,32($17)
\n
\
ldq $20,32($18)
ldq $20,32($18)
\n
\
ldq $21,40($17)
ldq $21,40($17)
\n
\
ldq $22,40($18)
ldq $22,40($18)
\n
\
\n
\
ldq $23,48($17)
ldq $23,48($17)
\n
\
ldq $24,48($18)
ldq $24,48($18)
\n
\
ldq $25,56($17)
ldq $25,56($17)
\n
\
ldq $27,56($18)
ldq $27,56($18)
\n
\
\n
\
ldq $31,256($17)
ldq $31,256($17)
\n
\
xor $0,$1,$0 # 8 cycles from $1 load
xor $0,$1,$0 # 8 cycles from $1 load
\n
\
ldq $31,256($18)
ldq $31,256($18)
\n
\
xor $2,$3,$2
xor $2,$3,$2
\n
\
\n
\
stq $0,0($17)
stq $0,0($17)
\n
\
xor $4,$5,$4
xor $4,$5,$4
\n
\
stq $2,8($17)
stq $2,8($17)
\n
\
xor $6,$7,$6
xor $6,$7,$6
\n
\
\n
\
stq $4,16($17)
stq $4,16($17)
\n
\
xor $19,$20,$19
xor $19,$20,$19
\n
\
stq $6,24($17)
stq $6,24($17)
\n
\
xor $21,$22,$21
xor $21,$22,$21
\n
\
\n
\
stq $19,32($17)
stq $19,32($17)
\n
\
xor $23,$24,$23
xor $23,$24,$23
\n
\
stq $21,40($17)
stq $21,40($17)
\n
\
xor $25,$27,$25
xor $25,$27,$25
\n
\
\n
\
stq $23,48($17)
stq $23,48($17)
\n
\
subq $16,1,$16
subq $16,1,$16
\n
\
stq $25,56($17)
stq $25,56($17)
\n
\
addq $17,64,$17
addq $17,64,$17
\n
\
\n
\
addq $18,64,$18
addq $18,64,$18
\n
\
bgt $16,2b
bgt $16,2b
\n
\
ret
ret
\n
\
.end xor_alpha_prefetch_2
.end xor_alpha_prefetch_2
\n
\
\n
\
.align 3
.align 3
\n
\
.ent xor_alpha_prefetch_3
.ent xor_alpha_prefetch_3
\n
\
xor_alpha_prefetch_3:
xor_alpha_prefetch_3:
\n
\
.prologue 0
.prologue 0
\n
\
srl $16, 6, $16
srl $16, 6, $16
\n
\
\n
\
ldq $31, 0($17)
ldq $31, 0($17)
\n
\
ldq $31, 0($18)
ldq $31, 0($18)
\n
\
ldq $31, 0($19)
ldq $31, 0($19)
\n
\
\n
\
ldq $31, 64($17)
ldq $31, 64($17)
\n
\
ldq $31, 64($18)
ldq $31, 64($18)
\n
\
ldq $31, 64($19)
ldq $31, 64($19)
\n
\
\n
\
ldq $31, 128($17)
ldq $31, 128($17)
\n
\
ldq $31, 128($18)
ldq $31, 128($18)
\n
\
ldq $31, 128($19)
ldq $31, 128($19)
\n
\
\n
\
ldq $31, 192($17)
ldq $31, 192($17)
\n
\
ldq $31, 192($18)
ldq $31, 192($18)
\n
\
ldq $31, 192($19)
ldq $31, 192($19)
\n
\
.align 4
.align 4
\n
\
3:
3:
\n
\
ldq $0,0($17)
ldq $0,0($17)
\n
\
ldq $1,0($18)
ldq $1,0($18)
\n
\
ldq $2,0($19)
ldq $2,0($19)
\n
\
ldq $3,8($17)
ldq $3,8($17)
\n
\
\n
\
ldq $4,8($18)
ldq $4,8($18)
\n
\
ldq $6,16($17)
ldq $6,16($17)
\n
\
ldq $7,16($18)
ldq $7,16($18)
\n
\
ldq $21,24($17)
ldq $21,24($17)
\n
\
\n
\
ldq $22,24($18)
ldq $22,24($18)
\n
\
ldq $24,32($17)
ldq $24,32($17)
\n
\
ldq $25,32($18)
ldq $25,32($18)
\n
\
ldq $5,8($19)
ldq $5,8($19)
\n
\
\n
\
ldq $20,16($19)
ldq $20,16($19)
\n
\
ldq $23,24($19)
ldq $23,24($19)
\n
\
ldq $27,32($19)
ldq $27,32($19)
\n
\
nop
nop
\n
\
\n
\
xor $0,$1,$1 # 8 cycles from $0 load
xor $0,$1,$1 # 8 cycles from $0 load
\n
\
xor $3,$4,$4 # 7 cycles from $4 load
xor $3,$4,$4 # 7 cycles from $4 load
\n
\
xor $6,$7,$7 # 6 cycles from $7 load
xor $6,$7,$7 # 6 cycles from $7 load
\n
\
xor $21,$22,$22 # 5 cycles from $22 load
xor $21,$22,$22 # 5 cycles from $22 load
\n
\
\n
\
xor $1,$2,$2 # 9 cycles from $2 load
xor $1,$2,$2 # 9 cycles from $2 load
\n
\
xor $24,$25,$25 # 5 cycles from $25 load
xor $24,$25,$25 # 5 cycles from $25 load
\n
\
stq $2,0($17)
stq $2,0($17)
\n
\
xor $4,$5,$5 # 6 cycles from $5 load
xor $4,$5,$5 # 6 cycles from $5 load
\n
\
\n
\
stq $5,8($17)
stq $5,8($17)
\n
\
xor $7,$20,$20 # 7 cycles from $20 load
xor $7,$20,$20 # 7 cycles from $20 load
\n
\
stq $20,16($17)
stq $20,16($17)
\n
\
xor $22,$23,$23 # 7 cycles from $23 load
xor $22,$23,$23 # 7 cycles from $23 load
\n
\
\n
\
stq $23,24($17)
stq $23,24($17)
\n
\
xor $25,$27,$27 # 7 cycles from $27 load
xor $25,$27,$27 # 7 cycles from $27 load
\n
\
stq $27,32($17)
stq $27,32($17)
\n
\
nop
nop
\n
\
\n
\
ldq $0,40($17)
ldq $0,40($17)
\n
\
ldq $1,40($18)
ldq $1,40($18)
\n
\
ldq $3,48($17)
ldq $3,48($17)
\n
\
ldq $4,48($18)
ldq $4,48($18)
\n
\
\n
\
ldq $6,56($17)
ldq $6,56($17)
\n
\
ldq $7,56($18)
ldq $7,56($18)
\n
\
ldq $2,40($19)
ldq $2,40($19)
\n
\
ldq $5,48($19)
ldq $5,48($19)
\n
\
\n
\
ldq $20,56($19)
ldq $20,56($19)
\n
\
ldq $31,256($17)
ldq $31,256($17)
\n
\
ldq $31,256($18)
ldq $31,256($18)
\n
\
ldq $31,256($19)
ldq $31,256($19)
\n
\
\n
\
xor $0,$1,$1 # 6 cycles from $1 load
xor $0,$1,$1 # 6 cycles from $1 load
\n
\
xor $3,$4,$4 # 5 cycles from $4 load
xor $3,$4,$4 # 5 cycles from $4 load
\n
\
xor $6,$7,$7 # 5 cycles from $7 load
xor $6,$7,$7 # 5 cycles from $7 load
\n
\
xor $1,$2,$2 # 4 cycles from $2 load
xor $1,$2,$2 # 4 cycles from $2 load
\n
\
\n
\
xor $4,$5,$5 # 5 cycles from $5 load
xor $4,$5,$5 # 5 cycles from $5 load
\n
\
xor $7,$20,$20 # 4 cycles from $20 load
xor $7,$20,$20 # 4 cycles from $20 load
\n
\
stq $2,40($17)
stq $2,40($17)
\n
\
subq $16,1,$16
subq $16,1,$16
\n
\
\n
\
stq $5,48($17)
stq $5,48($17)
\n
\
addq $19,64,$19
addq $19,64,$19
\n
\
stq $20,56($17)
stq $20,56($17)
\n
\
addq $18,64,$18
addq $18,64,$18
\n
\
\n
\
addq $17,64,$17
addq $17,64,$17
\n
\
bgt $16,3b
bgt $16,3b
\n
\
ret
ret
\n
\
.end xor_alpha_prefetch_3
.end xor_alpha_prefetch_3
\n
\
\n
\
.align 3
.align 3
\n
\
.ent xor_alpha_prefetch_4
.ent xor_alpha_prefetch_4
\n
\
xor_alpha_prefetch_4:
xor_alpha_prefetch_4:
\n
\
.prologue 0
.prologue 0
\n
\
srl $16, 6, $16
srl $16, 6, $16
\n
\
\n
\
ldq $31, 0($17)
ldq $31, 0($17)
\n
\
ldq $31, 0($18)
ldq $31, 0($18)
\n
\
ldq $31, 0($19)
ldq $31, 0($19)
\n
\
ldq $31, 0($20)
ldq $31, 0($20)
\n
\
\n
\
ldq $31, 64($17)
ldq $31, 64($17)
\n
\
ldq $31, 64($18)
ldq $31, 64($18)
\n
\
ldq $31, 64($19)
ldq $31, 64($19)
\n
\
ldq $31, 64($20)
ldq $31, 64($20)
\n
\
\n
\
ldq $31, 128($17)
ldq $31, 128($17)
\n
\
ldq $31, 128($18)
ldq $31, 128($18)
\n
\
ldq $31, 128($19)
ldq $31, 128($19)
\n
\
ldq $31, 128($20)
ldq $31, 128($20)
\n
\
\n
\
ldq $31, 192($17)
ldq $31, 192($17)
\n
\
ldq $31, 192($18)
ldq $31, 192($18)
\n
\
ldq $31, 192($19)
ldq $31, 192($19)
\n
\
ldq $31, 192($20)
ldq $31, 192($20)
\n
\
.align 4
.align 4
\n
\
4:
4:
\n
\
ldq $0,0($17)
ldq $0,0($17)
\n
\
ldq $1,0($18)
ldq $1,0($18)
\n
\
ldq $2,0($19)
ldq $2,0($19)
\n
\
ldq $3,0($20)
ldq $3,0($20)
\n
\
\n
\
ldq $4,8($17)
ldq $4,8($17)
\n
\
ldq $5,8($18)
ldq $5,8($18)
\n
\
ldq $6,8($19)
ldq $6,8($19)
\n
\
ldq $7,8($20)
ldq $7,8($20)
\n
\
\n
\
ldq $21,16($17)
ldq $21,16($17)
\n
\
ldq $22,16($18)
ldq $22,16($18)
\n
\
ldq $23,16($19)
ldq $23,16($19)
\n
\
ldq $24,16($20)
ldq $24,16($20)
\n
\
\n
\
ldq $25,24($17)
ldq $25,24($17)
\n
\
xor $0,$1,$1 # 6 cycles from $1 load
xor $0,$1,$1 # 6 cycles from $1 load
\n
\
ldq $27,24($18)
ldq $27,24($18)
\n
\
xor $2,$3,$3 # 6 cycles from $3 load
xor $2,$3,$3 # 6 cycles from $3 load
\n
\
\n
\
ldq $0,24($19)
ldq $0,24($19)
\n
\
xor $1,$3,$3
xor $1,$3,$3
\n
\
ldq $1,24($20)
ldq $1,24($20)
\n
\
xor $4,$5,$5 # 7 cycles from $5 load
xor $4,$5,$5 # 7 cycles from $5 load
\n
\
\n
\
stq $3,0($17)
stq $3,0($17)
\n
\
xor $6,$7,$7
xor $6,$7,$7
\n
\
xor $21,$22,$22 # 7 cycles from $22 load
xor $21,$22,$22 # 7 cycles from $22 load
\n
\
xor $5,$7,$7
xor $5,$7,$7
\n
\
\n
\
stq $7,8($17)
stq $7,8($17)
\n
\
xor $23,$24,$24 # 7 cycles from $24 load
xor $23,$24,$24 # 7 cycles from $24 load
\n
\
ldq $2,32($17)
ldq $2,32($17)
\n
\
xor $22,$24,$24
xor $22,$24,$24
\n
\
\n
\
ldq $3,32($18)
ldq $3,32($18)
\n
\
ldq $4,32($19)
ldq $4,32($19)
\n
\
ldq $5,32($20)
ldq $5,32($20)
\n
\
xor $25,$27,$27 # 8 cycles from $27 load
xor $25,$27,$27 # 8 cycles from $27 load
\n
\
\n
\
ldq $6,40($17)
ldq $6,40($17)
\n
\
ldq $7,40($18)
ldq $7,40($18)
\n
\
ldq $21,40($19)
ldq $21,40($19)
\n
\
ldq $22,40($20)
ldq $22,40($20)
\n
\
\n
\
stq $24,16($17)
stq $24,16($17)
\n
\
xor $0,$1,$1 # 9 cycles from $1 load
xor $0,$1,$1 # 9 cycles from $1 load
\n
\
xor $2,$3,$3 # 5 cycles from $3 load
xor $2,$3,$3 # 5 cycles from $3 load
\n
\
xor $27,$1,$1
xor $27,$1,$1
\n
\
\n
\
stq $1,24($17)
stq $1,24($17)
\n
\
xor $4,$5,$5 # 5 cycles from $5 load
xor $4,$5,$5 # 5 cycles from $5 load
\n
\
ldq $23,48($17)
ldq $23,48($17)
\n
\
xor $3,$5,$5
xor $3,$5,$5
\n
\
\n
\
ldq $24,48($18)
ldq $24,48($18)
\n
\
ldq $25,48($19)
ldq $25,48($19)
\n
\
ldq $27,48($20)
ldq $27,48($20)
\n
\
ldq $0,56($17)
ldq $0,56($17)
\n
\
\n
\
ldq $1,56($18)
ldq $1,56($18)
\n
\
ldq $2,56($19)
ldq $2,56($19)
\n
\
ldq $3,56($20)
ldq $3,56($20)
\n
\
xor $6,$7,$7 # 8 cycles from $6 load
xor $6,$7,$7 # 8 cycles from $6 load
\n
\
\n
\
ldq $31,256($17)
ldq $31,256($17)
\n
\
xor $21,$22,$22 # 8 cycles from $22 load
xor $21,$22,$22 # 8 cycles from $22 load
\n
\
ldq $31,256($18)
ldq $31,256($18)
\n
\
xor $7,$22,$22
xor $7,$22,$22
\n
\
\n
\
ldq $31,256($19)
ldq $31,256($19)
\n
\
xor $23,$24,$24 # 6 cycles from $24 load
xor $23,$24,$24 # 6 cycles from $24 load
\n
\
ldq $31,256($20)
ldq $31,256($20)
\n
\
xor $25,$27,$27 # 6 cycles from $27 load
xor $25,$27,$27 # 6 cycles from $27 load
\n
\
\n
\
stq $5,32($17)
stq $5,32($17)
\n
\
xor $24,$27,$27
xor $24,$27,$27
\n
\
xor $0,$1,$1 # 7 cycles from $1 load
xor $0,$1,$1 # 7 cycles from $1 load
\n
\
xor $2,$3,$3 # 6 cycles from $3 load
xor $2,$3,$3 # 6 cycles from $3 load
\n
\
\n
\
stq $22,40($17)
stq $22,40($17)
\n
\
xor $1,$3,$3
xor $1,$3,$3
\n
\
stq $27,48($17)
stq $27,48($17)
\n
\
subq $16,1,$16
subq $16,1,$16
\n
\
\n
\
stq $3,56($17)
stq $3,56($17)
\n
\
addq $20,64,$20
addq $20,64,$20
\n
\
addq $19,64,$19
addq $19,64,$19
\n
\
addq $18,64,$18
addq $18,64,$18
\n
\
\n
\
addq $17,64,$17
addq $17,64,$17
\n
\
bgt $16,4b
bgt $16,4b
\n
\
ret
ret
\n
\
.end xor_alpha_prefetch_4
.end xor_alpha_prefetch_4
\n
\
\n
\
.align 3
.align 3
\n
\
.ent xor_alpha_prefetch_5
.ent xor_alpha_prefetch_5
\n
\
xor_alpha_prefetch_5:
xor_alpha_prefetch_5:
\n
\
.prologue 0
.prologue 0
\n
\
srl $16, 6, $16
srl $16, 6, $16
\n
\
\n
\
ldq $31, 0($17)
ldq $31, 0($17)
\n
\
ldq $31, 0($18)
ldq $31, 0($18)
\n
\
ldq $31, 0($19)
ldq $31, 0($19)
\n
\
ldq $31, 0($20)
ldq $31, 0($20)
\n
\
ldq $31, 0($21)
ldq $31, 0($21)
\n
\
\n
\
ldq $31, 64($17)
ldq $31, 64($17)
\n
\
ldq $31, 64($18)
ldq $31, 64($18)
\n
\
ldq $31, 64($19)
ldq $31, 64($19)
\n
\
ldq $31, 64($20)
ldq $31, 64($20)
\n
\
ldq $31, 64($21)
ldq $31, 64($21)
\n
\
\n
\
ldq $31, 128($17)
ldq $31, 128($17)
\n
\
ldq $31, 128($18)
ldq $31, 128($18)
\n
\
ldq $31, 128($19)
ldq $31, 128($19)
\n
\
ldq $31, 128($20)
ldq $31, 128($20)
\n
\
ldq $31, 128($21)
ldq $31, 128($21)
\n
\
\n
\
ldq $31, 192($17)
ldq $31, 192($17)
\n
\
ldq $31, 192($18)
ldq $31, 192($18)
\n
\
ldq $31, 192($19)
ldq $31, 192($19)
\n
\
ldq $31, 192($20)
ldq $31, 192($20)
\n
\
ldq $31, 192($21)
ldq $31, 192($21)
\n
\
.align 4
.align 4
\n
\
5:
5:
\n
\
ldq $0,0($17)
ldq $0,0($17)
\n
\
ldq $1,0($18)
ldq $1,0($18)
\n
\
ldq $2,0($19)
ldq $2,0($19)
\n
\
ldq $3,0($20)
ldq $3,0($20)
\n
\
\n
\
ldq $4,0($21)
ldq $4,0($21)
\n
\
ldq $5,8($17)
ldq $5,8($17)
\n
\
ldq $6,8($18)
ldq $6,8($18)
\n
\
ldq $7,8($19)
ldq $7,8($19)
\n
\
\n
\
ldq $22,8($20)
ldq $22,8($20)
\n
\
ldq $23,8($21)
ldq $23,8($21)
\n
\
ldq $24,16($17)
ldq $24,16($17)
\n
\
ldq $25,16($18)
ldq $25,16($18)
\n
\
\n
\
ldq $27,16($19)
ldq $27,16($19)
\n
\
xor $0,$1,$1 # 6 cycles from $1 load
xor $0,$1,$1 # 6 cycles from $1 load
\n
\
ldq $28,16($20)
ldq $28,16($20)
\n
\
xor $2,$3,$3 # 6 cycles from $3 load
xor $2,$3,$3 # 6 cycles from $3 load
\n
\
\n
\
ldq $0,16($21)
ldq $0,16($21)
\n
\
xor $1,$3,$3
xor $1,$3,$3
\n
\
ldq $1,24($17)
ldq $1,24($17)
\n
\
xor $3,$4,$4 # 7 cycles from $4 load
xor $3,$4,$4 # 7 cycles from $4 load
\n
\
\n
\
stq $4,0($17)
stq $4,0($17)
\n
\
xor $5,$6,$6 # 7 cycles from $6 load
xor $5,$6,$6 # 7 cycles from $6 load
\n
\
xor $7,$22,$22 # 7 cycles from $22 load
xor $7,$22,$22 # 7 cycles from $22 load
\n
\
xor $6,$23,$23 # 7 cycles from $23 load
xor $6,$23,$23 # 7 cycles from $23 load
\n
\
\n
\
ldq $2,24($18)
ldq $2,24($18)
\n
\
xor $22,$23,$23
xor $22,$23,$23
\n
\
ldq $3,24($19)
ldq $3,24($19)
\n
\
xor $24,$25,$25 # 8 cycles from $25 load
xor $24,$25,$25 # 8 cycles from $25 load
\n
\
\n
\
stq $23,8($17)
stq $23,8($17)
\n
\
xor $25,$27,$27 # 8 cycles from $27 load
xor $25,$27,$27 # 8 cycles from $27 load
\n
\
ldq $4,24($20)
ldq $4,24($20)
\n
\
xor $28,$0,$0 # 7 cycles from $0 load
xor $28,$0,$0 # 7 cycles from $0 load
\n
\
\n
\
ldq $5,24($21)
ldq $5,24($21)
\n
\
xor $27,$0,$0
xor $27,$0,$0
\n
\
ldq $6,32($17)
ldq $6,32($17)
\n
\
ldq $7,32($18)
ldq $7,32($18)
\n
\
\n
\
stq $0,16($17)
stq $0,16($17)
\n
\
xor $1,$2,$2 # 6 cycles from $2 load
xor $1,$2,$2 # 6 cycles from $2 load
\n
\
ldq $22,32($19)
ldq $22,32($19)
\n
\
xor $3,$4,$4 # 4 cycles from $4 load
xor $3,$4,$4 # 4 cycles from $4 load
\n
\
\n
\
ldq $23,32($20)
ldq $23,32($20)
\n
\
xor $2,$4,$4
xor $2,$4,$4
\n
\
ldq $24,32($21)
ldq $24,32($21)
\n
\
ldq $25,40($17)
ldq $25,40($17)
\n
\
\n
\
ldq $27,40($18)
ldq $27,40($18)
\n
\
ldq $28,40($19)
ldq $28,40($19)
\n
\
ldq $0,40($20)
ldq $0,40($20)
\n
\
xor $4,$5,$5 # 7 cycles from $5 load
xor $4,$5,$5 # 7 cycles from $5 load
\n
\
\n
\
stq $5,24($17)
stq $5,24($17)
\n
\
xor $6,$7,$7 # 7 cycles from $7 load
xor $6,$7,$7 # 7 cycles from $7 load
\n
\
ldq $1,40($21)
ldq $1,40($21)
\n
\
ldq $2,48($17)
ldq $2,48($17)
\n
\
\n
\
ldq $3,48($18)
ldq $3,48($18)
\n
\
xor $7,$22,$22 # 7 cycles from $22 load
xor $7,$22,$22 # 7 cycles from $22 load
\n
\
ldq $4,48($19)
ldq $4,48($19)
\n
\
xor $23,$24,$24 # 6 cycles from $24 load
xor $23,$24,$24 # 6 cycles from $24 load
\n
\
\n
\
ldq $5,48($20)
ldq $5,48($20)
\n
\
xor $22,$24,$24
xor $22,$24,$24
\n
\
ldq $6,48($21)
ldq $6,48($21)
\n
\
xor $25,$27,$27 # 7 cycles from $27 load
xor $25,$27,$27 # 7 cycles from $27 load
\n
\
\n
\
stq $24,32($17)
stq $24,32($17)
\n
\
xor $27,$28,$28 # 8 cycles from $28 load
xor $27,$28,$28 # 8 cycles from $28 load
\n
\
ldq $7,56($17)
ldq $7,56($17)
\n
\
xor $0,$1,$1 # 6 cycles from $1 load
xor $0,$1,$1 # 6 cycles from $1 load
\n
\
\n
\
ldq $22,56($18)
ldq $22,56($18)
\n
\
ldq $23,56($19)
ldq $23,56($19)
\n
\
ldq $24,56($20)
ldq $24,56($20)
\n
\
ldq $25,56($21)
ldq $25,56($21)
\n
\
\n
\
ldq $31,256($17)
ldq $31,256($17)
\n
\
xor $28,$1,$1
xor $28,$1,$1
\n
\
ldq $31,256($18)
ldq $31,256($18)
\n
\
xor $2,$3,$3 # 9 cycles from $3 load
xor $2,$3,$3 # 9 cycles from $3 load
\n
\
\n
\
ldq $31,256($19)
ldq $31,256($19)
\n
\
xor $3,$4,$4 # 9 cycles from $4 load
xor $3,$4,$4 # 9 cycles from $4 load
\n
\
ldq $31,256($20)
ldq $31,256($20)
\n
\
xor $5,$6,$6 # 8 cycles from $6 load
xor $5,$6,$6 # 8 cycles from $6 load
\n
\
\n
\
stq $1,40($17)
stq $1,40($17)
\n
\
xor $4,$6,$6
xor $4,$6,$6
\n
\
xor $7,$22,$22 # 7 cycles from $22 load
xor $7,$22,$22 # 7 cycles from $22 load
\n
\
xor $23,$24,$24 # 6 cycles from $24 load
xor $23,$24,$24 # 6 cycles from $24 load
\n
\
\n
\
stq $6,48($17)
stq $6,48($17)
\n
\
xor $22,$24,$24
xor $22,$24,$24
\n
\
ldq $31,256($21)
ldq $31,256($21)
\n
\
xor $24,$25,$25 # 8 cycles from $25 load
xor $24,$25,$25 # 8 cycles from $25 load
\n
\
\n
\
stq $25,56($17)
stq $25,56($17)
\n
\
subq $16,1,$16
subq $16,1,$16
\n
\
addq $21,64,$21
addq $21,64,$21
\n
\
addq $20,64,$20
addq $20,64,$20
\n
\
\n
\
addq $19,64,$19
addq $19,64,$19
\n
\
addq $18,64,$18
addq $18,64,$18
\n
\
addq $17,64,$17
addq $17,64,$17
\n
\
bgt $16,5b
bgt $16,5b
\n
\
\n
\
ret
ret
\n
\
.end xor_alpha_prefetch_5
.end xor_alpha_prefetch_5
\n
\
"
);
"
);
static
struct
xor_block_template
xor_block_alpha
=
{
static
struct
xor_block_template
xor_block_alpha
=
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment