Rev 3343 | Rev 3398 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3343 | Rev 3365 | ||
---|---|---|---|
Line 103... | Line 103... | ||
103 | /* |
103 | /* |
104 | * We have copied code and now we need to guarantee cache coherence. |
104 | * We have copied code and now we need to guarantee cache coherence. |
105 | * 1. Make sure that the code we have moved has drained to main memory. |
105 | * 1. Make sure that the code we have moved has drained to main memory. |
106 | * 2. Invalidate I-cache. |
106 | * 2. Invalidate I-cache. |
107 | * 3. Flush instruction pipeline. |
107 | * 3. Flush instruction pipeline. |
- | 108 | */ |
|
- | 109 | ||
- | 110 | /* |
|
- | 111 | * US-III processors have a write-invalidate cache, so flushing it is |
|
- | 112 | * not required. We only use the FLUSH instruction to flush the |
|
- | 113 | * pipeline. |
|
108 | */ |
114 | */ |
- | 115 | #ifdef US2 |
|
109 | call icache_flush |
116 | call icache_flush |
- | 117 | #endif |
|
- | 118 | ||
110 | membar #StoreStore |
119 | membar #StoreStore |
111 | flush %i7 |
120 | flush %i7 |
112 | 121 | ||
113 | mov %o0, %l1 |
122 | mov %o0, %l1 |
114 | mov %o1, %o0 |
123 | mov %o1, %o0 |