compressed_tags.hh (13946:8e96e9be7f2c) compressed_tags.hh (13947:4cf8087cab09)
1/*
2 * Copyright (c) 2018 Inria
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 84 unchanged lines hidden (view full) ---

93 virtual ~CompressedTags() {};
94
95 /**
96 * Initialize blocks as SuperBlk and CompressionBlk instances.
97 */
98 void tagsInit() override;
99
100 /**
1/*
2 * Copyright (c) 2018 Inria
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 84 unchanged lines hidden (view full) ---

93 virtual ~CompressedTags() {};
94
95 /**
96 * Initialize blocks as SuperBlk and CompressionBlk instances.
97 */
98 void tagsInit() override;
99
100 /**
101 * Checks whether a superblock can co-allocate given compressed data block.
102 *
103 * @param superblock Superblock to check.
104 * @param compressed_size Size, in bits, of new block to allocate.
105 * @return True if block can be co-allocated in superblock.
106 */
107 bool canCoAllocate(const SuperBlk* superblock,
108 const std::size_t compressed_size) const;
109
110 /**
111 * Find replacement victim based on address. Checks if data can be co-
112 * allocated before choosing blocks to be evicted.
113 *
114 * @param addr Address to find a victim for.
115 * @param is_secure True if the target memory space is secure.
116 * @param compressed_size Size, in bits, of new block to allocate.
117 * @param evict_blks Cache blocks to be evicted.
118 * @return Cache block to be replaced.

--- 36 unchanged lines hidden ---
101 * Find replacement victim based on address. Checks if data can be co-
102 * allocated before choosing blocks to be evicted.
103 *
104 * @param addr Address to find a victim for.
105 * @param is_secure True if the target memory space is secure.
106 * @param compressed_size Size, in bits, of new block to allocate.
107 * @param evict_blks Cache blocks to be evicted.
108 * @return Cache block to be replaced.

--- 36 unchanged lines hidden ---