gem5  v19.0.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Functions
addr_range.test.cc File Reference
#include <gtest/gtest.h>
#include <cmath>
#include "base/addr_range.hh"
#include "base/bitfield.hh"

Go to the source code of this file.

Functions

 TEST (AddrRangeTest, ValidRange)
 
 TEST (AddrRangeTest, EmptyRange)
 
 TEST (AddrRangeTest, RangeSizeOfOne)
 
 TEST (AddrRangeTest, Range16Bit)
 
 TEST (AddrRangeTest, InvalidRange)
 
 TEST (AddrRangeTest, LessThan)
 
 TEST (AddrRangeTest, EqualToNotEqualTo)
 
 TEST (AddrRangeTest, MergesWith)
 
 TEST (AddrRangeTest, DoesNotMergeWith)
 
 TEST (AddrRangeTest, IntersectsCompleteOverlap)
 
 TEST (AddrRangeTest, IntersectsAddressWithin)
 
 TEST (AddrRangeTest, IntersectsPartialOverlap)
 
 TEST (AddrRangeTest, IntersectsNoOverlap)
 
 TEST (AddrRangeTest, IntersectsFirstLastAddressOverlap)
 
 TEST (AddrRangeTest, isSubsetCompleteOverlap)
 
 TEST (AddrRangeTest, isSubsetNoOverlap)
 
 TEST (AddrRangeTest, isSubsetTrueSubset)
 
 TEST (AddrRangeTest, isSubsetPartialSubset)
 
 TEST (AddrRangeTest, isSubsetInterleavedCompleteOverlap)
 
 TEST (AddrRangeTest, isSubsetInterleavedNoOverlap)
 
 TEST (AddrRangeTest, isSubsetInterleavedPartialOverlap)
 
 TEST (AddrRangeTest, Contains)
 
 TEST (AddrRangeTest, ContainsInAnEmptyRange)
 
 TEST (AddrRangeTest, RemoveIntlvBits)
 
 TEST (AddrRangeTest, addIntlvBits)
 
 TEST (AddrRangeTest, OffsetInRange)
 
 TEST (AddrRangeTest, OffsetOutOfRangeAfter)
 
 TEST (AddrRangeTest, OffsetOutOfRangeBefore)
 
 TEST (AddrRangeTest, LsbInterleavingMask)
 
 TEST (AddrRangeTest, TwoInterleavingMasks)
 
 TEST (AddrRangeTest, ComplexInterleavingMasks)
 
 TEST (AddrRangeTest, InterleavingAddressesMergesWith)
 
 TEST (AddrRangeTest, InterleavingAddressesDoNotMergeWith)
 
 TEST (AddrRangeTest, InterleavingAddressesDoNotIntersect)
 
 TEST (AddrRangeTest, InterleavingAddressesIntersectsViaMerging)
 
 TEST (AddrRangeTest, InterleavingAddressesDoesNotIntersectViaMerging)
 
 TEST (AddrRangeTest, DISABLED_InterleavingAddressesIntersect)
 
 TEST (AddrRangeTest, DISABLED_InterleavingAddressesIntersectsOnOneByteAddress)
 
 TEST (AddrRangeTest, DISABLED_InterleavingAddressesDoesNotIntersectOnOneByteAddress)
 
 TEST (AddrRangeTest, DISABLED_InterleavingAddressIsSubset)
 
 TEST (AddrRangeTest, DISABLED_InterleavingAddressIsNotSubset)
 
 TEST (AddrRangeTest, DISABLED_InterleavingAddressContains)
 
 TEST (AddrRangeTest, InterleavingAddressAddRemoveInterlvBits)
 
 TEST (AddrRangeTest, InterleavingAddressAddRemoveInterlvBitsTwoMasks)
 
 TEST (AddrRangeTest, AddRemoveInterleavBitsAcrossRange)
 
 TEST (AddrRangeTest, InterleavingAddressesGetOffset)
 
 TEST (AddrRangeTest, InterleavingLessThanStartEquals)
 
 TEST (AddrRangeTest, InterleavingLessThanStartNotEquals)
 
 TEST (AddrRangeTest, InterleavingEqualTo)
 
 TEST (AddrRangeTest, InterleavingNotEqualTo)
 
 TEST (AddrRangeTest, MergingInterleavingAddressRanges)
 
 TEST (AddrRangeTest, MergingInterleavingAddressRangesOneRange)
 
 TEST (AddrRangeTest, LegacyConstructorNoInterleaving)
 
 TEST (AddrRangeTest, LegacyConstructorOneBitMask)
 
 TEST (AddrRangeTest, LegacyConstructorTwoBitMask)
 
 TEST (AddrRangeTest, LegacyConstructorTwoBitMaskWithXOR)
 
 TEST (AddrRangeTest, RangeExConstruction)
 
 TEST (AddrRangeTest, RangeInConstruction)
 
 TEST (AddrRangeTest, RangeSizeConstruction)
 

Function Documentation

◆ TEST() [1/59]

TEST ( AddrRangeTest  ,
ValidRange   
)

Definition at line 49 of file addr_range.test.cc.

References EXPECT_FALSE, MipsISA::r, and AddrRange::valid().

◆ TEST() [2/59]

TEST ( AddrRangeTest  ,
EmptyRange   
)

◆ TEST() [3/59]

TEST ( AddrRangeTest  ,
RangeSizeOfOne   
)

◆ TEST() [4/59]

TEST ( AddrRangeTest  ,
Range16Bit   
)

◆ TEST() [5/59]

TEST ( AddrRangeTest  ,
InvalidRange   
)

Definition at line 116 of file addr_range.test.cc.

References EXPECT_FALSE, MipsISA::r, and AddrRange::valid().

◆ TEST() [6/59]

TEST ( AddrRangeTest  ,
LessThan   
)

Definition at line 122 of file addr_range.test.cc.

References EXPECT_FALSE, and EXPECT_TRUE.

◆ TEST() [7/59]

TEST ( AddrRangeTest  ,
EqualToNotEqualTo   
)

Definition at line 140 of file addr_range.test.cc.

References EXPECT_FALSE, and EXPECT_TRUE.

◆ TEST() [8/59]

TEST ( AddrRangeTest  ,
MergesWith   
)

Definition at line 157 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::mergesWith().

◆ TEST() [9/59]

TEST ( AddrRangeTest  ,
DoesNotMergeWith   
)

Definition at line 170 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::mergesWith().

◆ TEST() [10/59]

TEST ( AddrRangeTest  ,
IntersectsCompleteOverlap   
)

Definition at line 179 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::intersects().

◆ TEST() [11/59]

TEST ( AddrRangeTest  ,
IntersectsAddressWithin   
)

Definition at line 188 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::intersects().

◆ TEST() [12/59]

TEST ( AddrRangeTest  ,
IntersectsPartialOverlap   
)

Definition at line 197 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::intersects().

◆ TEST() [13/59]

TEST ( AddrRangeTest  ,
IntersectsNoOverlap   
)

Definition at line 206 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::intersects().

◆ TEST() [14/59]

TEST ( AddrRangeTest  ,
IntersectsFirstLastAddressOverlap   
)

Definition at line 215 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::intersects().

◆ TEST() [15/59]

TEST ( AddrRangeTest  ,
isSubsetCompleteOverlap   
)

Definition at line 228 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::isSubset().

◆ TEST() [16/59]

TEST ( AddrRangeTest  ,
isSubsetNoOverlap   
)

Definition at line 237 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::isSubset().

◆ TEST() [17/59]

TEST ( AddrRangeTest  ,
isSubsetTrueSubset   
)

Definition at line 246 of file addr_range.test.cc.

References EXPECT_FALSE, EXPECT_TRUE, and AddrRange::isSubset().

◆ TEST() [18/59]

TEST ( AddrRangeTest  ,
isSubsetPartialSubset   
)

Definition at line 255 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::isSubset().

◆ TEST() [19/59]

TEST ( AddrRangeTest  ,
isSubsetInterleavedCompleteOverlap   
)

Definition at line 264 of file addr_range.test.cc.

References EXPECT_TRUE.

◆ TEST() [20/59]

TEST ( AddrRangeTest  ,
isSubsetInterleavedNoOverlap   
)

Definition at line 272 of file addr_range.test.cc.

References EXPECT_FALSE.

◆ TEST() [21/59]

TEST ( AddrRangeTest  ,
isSubsetInterleavedPartialOverlap   
)

Definition at line 280 of file addr_range.test.cc.

References EXPECT_FALSE.

◆ TEST() [22/59]

TEST ( AddrRangeTest  ,
Contains   
)

Definition at line 288 of file addr_range.test.cc.

References AddrRange::contains(), EXPECT_FALSE, EXPECT_TRUE, and MipsISA::r.

◆ TEST() [23/59]

TEST ( AddrRangeTest  ,
ContainsInAnEmptyRange   
)

Definition at line 302 of file addr_range.test.cc.

References AddrRange::contains(), EXPECT_FALSE, and MipsISA::r.

◆ TEST() [24/59]

TEST ( AddrRangeTest  ,
RemoveIntlvBits   
)

Definition at line 309 of file addr_range.test.cc.

References ArmISA::a, EXPECT_EQ, MipsISA::r, and AddrRange::removeIntlvBits().

◆ TEST() [25/59]

TEST ( AddrRangeTest  ,
addIntlvBits   
)

Definition at line 322 of file addr_range.test.cc.

References ArmISA::a, AddrRange::addIntlvBits(), EXPECT_EQ, and MipsISA::r.

◆ TEST() [26/59]

TEST ( AddrRangeTest  ,
OffsetInRange   
)

Definition at line 335 of file addr_range.test.cc.

References EXPECT_EQ, AddrRange::getOffset(), and MipsISA::r.

◆ TEST() [27/59]

TEST ( AddrRangeTest  ,
OffsetOutOfRangeAfter   
)

Definition at line 341 of file addr_range.test.cc.

References EXPECT_EQ, AddrRange::getOffset(), MaxAddr, and MipsISA::r.

◆ TEST() [28/59]

TEST ( AddrRangeTest  ,
OffsetOutOfRangeBefore   
)

Definition at line 350 of file addr_range.test.cc.

References EXPECT_EQ, AddrRange::getOffset(), MaxAddr, and MipsISA::r.

◆ TEST() [29/59]

TEST ( AddrRangeTest  ,
LsbInterleavingMask   
)

◆ TEST() [30/59]

TEST ( AddrRangeTest  ,
TwoInterleavingMasks   
)

◆ TEST() [31/59]

TEST ( AddrRangeTest  ,
ComplexInterleavingMasks   
)

◆ TEST() [32/59]

TEST ( AddrRangeTest  ,
InterleavingAddressesMergesWith   
)

Definition at line 433 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::mergesWith().

◆ TEST() [33/59]

TEST ( AddrRangeTest  ,
InterleavingAddressesDoNotMergeWith   
)

Definition at line 452 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::mergesWith().

◆ TEST() [34/59]

TEST ( AddrRangeTest  ,
InterleavingAddressesDoNotIntersect   
)

Definition at line 474 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::intersects().

◆ TEST() [35/59]

TEST ( AddrRangeTest  ,
InterleavingAddressesIntersectsViaMerging   
)

Definition at line 501 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::intersects().

◆ TEST() [36/59]

TEST ( AddrRangeTest  ,
InterleavingAddressesDoesNotIntersectViaMerging   
)

Definition at line 523 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::intersects().

◆ TEST() [37/59]

TEST ( AddrRangeTest  ,
DISABLED_InterleavingAddressesIntersect   
)

Definition at line 559 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::intersects().

◆ TEST() [38/59]

TEST ( AddrRangeTest  ,
DISABLED_InterleavingAddressesIntersectsOnOneByteAddress   
)

Definition at line 586 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::intersects().

◆ TEST() [39/59]

TEST ( AddrRangeTest  ,
DISABLED_InterleavingAddressesDoesNotIntersectOnOneByteAddress   
)

Definition at line 604 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::intersects().

◆ TEST() [40/59]

TEST ( AddrRangeTest  ,
DISABLED_InterleavingAddressIsSubset   
)

Definition at line 629 of file addr_range.test.cc.

References EXPECT_TRUE, and AddrRange::isSubset().

◆ TEST() [41/59]

TEST ( AddrRangeTest  ,
DISABLED_InterleavingAddressIsNotSubset   
)

Definition at line 652 of file addr_range.test.cc.

References EXPECT_FALSE, and AddrRange::isSubset().

◆ TEST() [42/59]

TEST ( AddrRangeTest  ,
DISABLED_InterleavingAddressContains   
)

addr[0] && !addr[4]

Definition at line 676 of file addr_range.test.cc.

References addr, AddrRange::contains(), EXPECT_FALSE, EXPECT_TRUE, and MipsISA::r.

◆ TEST() [43/59]

TEST ( AddrRangeTest  ,
InterleavingAddressAddRemoveInterlvBits   
)

◆ TEST() [44/59]

TEST ( AddrRangeTest  ,
InterleavingAddressAddRemoveInterlvBitsTwoMasks   
)

◆ TEST() [45/59]

TEST ( AddrRangeTest  ,
AddRemoveInterleavBitsAcrossRange   
)

◆ TEST() [46/59]

TEST ( AddrRangeTest  ,
InterleavingAddressesGetOffset   
)

Definition at line 790 of file addr_range.test.cc.

References EXPECT_EQ, AddrRange::getOffset(), and MipsISA::r.

◆ TEST() [47/59]

TEST ( AddrRangeTest  ,
InterleavingLessThanStartEquals   
)

Definition at line 808 of file addr_range.test.cc.

References EXPECT_FALSE, and EXPECT_TRUE.

◆ TEST() [48/59]

TEST ( AddrRangeTest  ,
InterleavingLessThanStartNotEquals   
)

Definition at line 833 of file addr_range.test.cc.

References EXPECT_FALSE, and EXPECT_TRUE.

◆ TEST() [49/59]

TEST ( AddrRangeTest  ,
InterleavingEqualTo   
)

Definition at line 854 of file addr_range.test.cc.

References EXPECT_TRUE.

◆ TEST() [50/59]

TEST ( AddrRangeTest  ,
InterleavingNotEqualTo   
)

Definition at line 873 of file addr_range.test.cc.

References EXPECT_FALSE.

◆ TEST() [51/59]

TEST ( AddrRangeTest  ,
MergingInterleavingAddressRanges   
)

◆ TEST() [52/59]

TEST ( AddrRangeTest  ,
MergingInterleavingAddressRangesOneRange   
)

Definition at line 929 of file addr_range.test.cc.

References EXPECT_EQ, output(), and MipsISA::r.

◆ TEST() [53/59]

TEST ( AddrRangeTest  ,
LegacyConstructorNoInterleaving   
)

Definition at line 966 of file addr_range.test.cc.

References EXPECT_EQ, and expected.

◆ TEST() [54/59]

TEST ( AddrRangeTest  ,
LegacyConstructorOneBitMask   
)

Definition at line 977 of file addr_range.test.cc.

References EXPECT_TRUE, and expected.

◆ TEST() [55/59]

TEST ( AddrRangeTest  ,
LegacyConstructorTwoBitMask   
)

Definition at line 993 of file addr_range.test.cc.

References EXPECT_TRUE, and expected.

◆ TEST() [56/59]

TEST ( AddrRangeTest  ,
LegacyConstructorTwoBitMaskWithXOR   
)

Definition at line 1010 of file addr_range.test.cc.

References AddrRange::contains(), EXPECT_FALSE, EXPECT_TRUE, and ArmISA::i.

◆ TEST() [57/59]

TEST ( AddrRangeTest  ,
RangeExConstruction   
)

Definition at line 1047 of file addr_range.test.cc.

References AddrRange::end(), EXPECT_EQ, MipsISA::r, RangeEx(), and AddrRange::start().

◆ TEST() [58/59]

TEST ( AddrRangeTest  ,
RangeInConstruction   
)

Definition at line 1054 of file addr_range.test.cc.

References AddrRange::end(), EXPECT_EQ, MipsISA::r, RangeIn(), and AddrRange::start().

◆ TEST() [59/59]

TEST ( AddrRangeTest  ,
RangeSizeConstruction   
)

Generated on Fri Feb 28 2020 16:27:06 for gem5 by doxygen 1.8.13