Christophe Leroy
22e9c88d48
powerpc/64: reuse PPC32 static inline flush_dcache_range()
...
This patch drops the assembly PPC64 version of flush_dcache_range()
and re-uses the PPC32 static inline version.
With GCC 8.1, the following code is generated:
void flush_test(unsigned long start, unsigned long stop)
{
flush_dcache_range(start, stop);
}
0000000000000130 <.flush_test>:
130: 3d 22 00 00 addis r9,r2,0
132: R_PPC64_TOC16_HA .data+0x8
134: 81 09 00 00 lwz r8,0(r9)
136: R_PPC64_TOC16_LO .data+0x8
138: 3d 22 00 00 addis r9,r2,0
13a: R_PPC64_TOC16_HA .data+0xc
13c: 80 e9 00 00 lwz r7,0(r9)
13e: R_PPC64_TOC16_LO .data+0xc
140: 7d 48 00 d0 neg r10,r8
144: 7d 43 18 38 and r3,r10,r3
148: 7c 00 04 ac hwsync
14c: 4c 00 01 2c isync
150: 39 28 ff ff addi r9,r8,-1
154: 7c 89 22 14 add r4,r9,r4
158: 7c 83 20 50 subf r4,r3,r4
15c: 7c 89 3c 37 srd. r9,r4,r7
160: 41 82 00 1c beq 17c <.flush_test+0x4c>
164: 7d 29 03 a6 mtctr r9
168: 60 00 00 00 nop
16c: 60 00 00 00 nop
170: 7c 00 18 ac dcbf 0,r3
174: 7c 63 42 14 add r3,r3,r8
178: 42 00 ff f8 bdnz 170 <.flush_test+0x40>
17c: 7c 00 04 ac hwsync
180: 4c 00 01 2c isync
184: 4e 80 00 20 blr
188: 60 00 00 00 nop
18c: 60 00 00 00 nop
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2019-07-05 02:06:37 +10:00
..
2019-05-16 12:23:45 -04:00
2019-02-23 22:31:40 +11:00
2019-05-01 10:49:58 +10:00
2019-05-01 10:49:58 +10:00
2019-01-03 18:57:57 -08:00
2019-07-02 21:39:49 +10:00
2017-11-02 11:10:55 +01:00
2018-11-26 22:33:37 +11:00
2019-06-15 16:52:06 +10:00
2019-06-15 16:52:06 +10:00
2017-11-02 11:10:55 +01:00
2019-03-19 00:30:19 +11:00
2018-12-04 19:45:01 +11:00
2018-10-09 16:04:27 +11:00
2019-05-03 01:20:25 +10:00
2018-10-14 18:04:09 +11:00
2018-07-30 22:47:53 +10:00
2019-07-03 15:19:35 +10:00
2019-05-01 16:45:05 +10:00
2019-07-03 15:19:35 +10:00
2019-02-18 22:41:03 +11:00
2019-02-18 22:41:04 +11:00
2019-03-12 10:04:02 -07:00
2019-05-03 01:20:26 +10:00
2019-07-01 16:26:54 +10:00
2018-10-13 22:21:25 +11:00
2019-02-05 11:55:44 +11:00
2019-02-22 00:10:15 +11:00
2019-02-05 11:55:43 +11:00
2019-02-05 11:55:43 +11:00
2019-02-22 00:10:15 +11:00
2019-05-03 02:54:57 +10:00
2019-05-03 02:54:57 +10:00
2019-02-23 22:31:40 +11:00
2019-02-27 22:52:38 +11:00
2019-07-03 15:19:35 +10:00
2019-05-03 01:20:24 +10:00
2019-05-03 01:58:11 +10:00
2017-11-02 11:10:55 +01:00
2019-05-03 01:20:27 +10:00
2019-05-03 01:20:27 +10:00
2019-06-15 23:43:54 +10:00
2019-05-03 01:20:27 +10:00
2019-05-03 01:20:27 +10:00
2019-06-16 00:00:30 +10:00
2019-06-16 00:03:38 +10:00
2019-06-16 00:03:38 +10:00
2019-07-03 15:19:35 +10:00
2019-02-23 22:31:40 +11:00
2019-02-23 22:31:40 +11:00
2019-04-30 22:37:48 +10:00
2019-02-23 22:31:40 +11:00
2019-02-23 22:31:40 +11:00
2016-12-20 09:48:44 -08:00
2018-10-14 18:04:09 +11:00
2018-04-05 14:59:26 +10:00
2019-01-01 15:55:29 -08:00
2019-05-03 01:58:11 +10:00
2018-11-26 22:33:37 +11:00
2019-01-06 09:46:51 +09:00
2018-04-13 17:10:28 -07:00
2019-02-23 22:31:40 +11:00
2018-06-21 12:33:19 +02:00
2018-06-21 12:33:19 +02:00
2018-07-30 22:48:16 +10:00
2019-04-05 16:02:30 -10:00
2019-05-24 17:36:45 +02:00
2018-12-22 21:29:50 +11:00
2019-06-07 16:24:47 +10:00
2019-02-23 22:31:40 +11:00
2018-12-06 14:38:50 +00:00
2018-07-30 22:47:53 +10:00
2019-07-03 15:19:35 +10:00
2019-07-03 15:19:35 +10:00
2019-05-01 22:23:20 +10:00
2019-02-23 22:31:40 +11:00
2019-07-05 02:06:37 +10:00
2018-06-04 00:39:17 +10:00
2018-05-25 12:04:38 +10:00
2018-10-20 13:26:47 +11:00
2018-10-20 13:26:47 +11:00
2017-12-11 13:03:35 +11:00
2018-11-29 23:49:11 +11:00
2019-01-22 10:21:45 +01:00
2017-08-23 22:27:04 +10:00
2018-01-19 22:37:01 +11:00
2017-11-12 23:51:41 +11:00
2019-04-21 23:12:38 +10:00
2019-05-21 10:50:45 +02:00
2018-10-14 18:04:09 +11:00
2017-12-11 13:03:35 +11:00
2019-07-03 15:19:35 +10:00
2019-03-07 12:56:26 -08:00
2017-12-18 23:05:52 -06:00
2018-11-26 22:33:37 +11:00
2018-07-30 22:48:16 +10:00
2018-01-22 05:48:33 +11:00
2019-07-03 15:19:35 +10:00
2019-06-07 19:00:14 +10:00
2019-07-01 14:04:39 +10:00
2017-11-02 11:10:55 +01:00
2019-03-12 10:04:01 -07:00
2016-12-24 11:46:01 -08:00
2019-04-20 22:20:45 +10:00
2017-08-31 14:26:47 +10:00
2019-01-03 18:57:57 -08:00
2017-08-31 14:26:40 +10:00
2018-06-07 10:23:33 -07:00
2018-06-03 20:43:33 +10:00
2019-07-01 16:26:54 +10:00
2019-01-03 18:57:57 -08:00
2019-05-10 05:29:27 -07:00
2019-05-21 10:50:45 +02:00
2019-05-10 05:29:27 -07:00
2019-05-03 01:58:11 +10:00
2018-05-25 12:04:43 +10:00
2019-01-03 18:57:57 -08:00
2019-05-01 23:03:29 +10:00
2019-01-03 18:57:57 -08:00
2018-05-10 23:25:13 +10:00
2017-11-02 11:10:55 +01:00
2019-02-23 22:31:40 +11:00
2019-03-02 14:43:05 +11:00
2019-06-19 20:05:07 +10:00
2017-03-02 08:42:30 +01:00
2018-10-14 18:04:09 +11:00
2017-11-02 11:10:55 +01:00
2017-03-20 19:02:49 +11:00
2018-05-10 23:25:15 +10:00
2019-02-22 00:10:15 +11:00
2019-05-21 10:50:45 +02:00
2018-05-10 23:25:16 +10:00
2019-03-02 14:43:05 +11:00
2018-05-25 12:04:44 +10:00
2019-05-03 02:54:57 +10:00
2019-07-02 21:39:49 +10:00
2019-05-18 15:52:26 -07:00
2019-01-14 20:39:27 +11:00
2017-08-24 16:19:21 +10:00
2019-03-05 21:07:18 -08:00
2018-05-25 12:04:46 +10:00
2019-05-03 01:58:11 +10:00
2019-02-23 21:04:32 +11:00
2019-04-30 11:31:02 +10:00