@@ -1459,68 +1459,83 @@ TEST_F(DILocationTest, Merge) {
14591459#endif
14601460 // Identical, including source atom numbers.
14611461 {
1462- auto *A = DILocation::get (Context, 2 , 7 , N, nullptr , false , 1 , 1 );
1463- auto *B = DILocation::get (Context, 2 , 7 , N, nullptr , false , 1 , 1 );
1462+ auto *A = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 1 ,
1463+ /* AtomRank*/ 1 );
1464+ auto *B = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 1 ,
1465+ /* AtomRank*/ 1 );
14641466 auto *M = DILocation::getMergedLocation (A, B);
1465- EXPECT_ATOM (M, 1u , 1u );
1467+ EXPECT_ATOM (M, /* AtomGroup */ 1u , 1u );
14661468 // DILocations are uniqued, so we can check equality by ptr.
14671469 EXPECT_EQ (M, DILocation::getMergedLocation (A, B));
14681470 }
14691471
14701472 // Identical but different atom ranks (same atom) - choose the lowest nonzero
14711473 // rank.
14721474 {
1473- auto *A = DILocation::get (Context, 2 , 7 , N, nullptr , false , 1 , 1 );
1474- auto *B = DILocation::get (Context, 2 , 7 , N, nullptr , false , 1 , 2 );
1475+ auto *A = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 1 ,
1476+ /* AtomRank*/ 1 );
1477+ auto *B = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 1 ,
1478+ /* AtomRank*/ 2 );
14751479 auto *M = DILocation::getMergedLocation (A, B);
1476- EXPECT_ATOM (M, 1u , 1u );
1480+ EXPECT_ATOM (M, /* AtomGroup */ 1u , /* AtomRank */ 1u );
14771481 EXPECT_EQ (M, DILocation::getMergedLocation (B, A));
14781482
1479- A = DILocation::get (Context, 2 , 7 , N, nullptr , false , 1 , 0 );
1480- B = DILocation::get (Context, 2 , 7 , N, nullptr , false , 1 , 2 );
1483+ A = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 1 ,
1484+ /* AtomRank*/ 0 );
1485+ B = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 1 ,
1486+ /* AtomRank*/ 2 );
14811487 M = DILocation::getMergedLocation (A, B);
1482- EXPECT_ATOM (M, 1u , 2u );
1488+ EXPECT_ATOM (M, /* AtomGroup */ 1u , /* AtomRank */ 2u );
14831489 EXPECT_EQ (M, DILocation::getMergedLocation (B, A));
14841490 }
14851491
14861492 // Identical but different atom ranks (different atom) - choose the lowest
14871493 // nonzero rank.
14881494 {
1489- auto *A = DILocation::get (Context, 2 , 7 , N, nullptr , false , 1 , 1 );
1490- auto *B = DILocation::get (Context, 2 , 7 , N, nullptr , false , 2 , 2 );
1495+ auto *A = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 1 ,
1496+ /* AtomRank*/ 1 );
1497+ auto *B = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 2 ,
1498+ /* AtomRank*/ 2 );
14911499 auto *M = DILocation::getMergedLocation (A, B);
14921500 EXPECT_ATOM (M, 1u , 1u );
14931501 EXPECT_EQ (M, DILocation::getMergedLocation (B, A));
14941502
1495- A = DILocation::get (Context, 2 , 7 , N, nullptr , false , 1 , 0 );
1496- B = DILocation::get (Context, 2 , 7 , N, nullptr , false , 2 , 2 );
1503+ A = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 1 ,
1504+ /* AtomRank*/ 0 );
1505+ B = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 2 ,
1506+ /* AtomRank*/ 2 );
14971507 M = DILocation::getMergedLocation (A, B);
1498- EXPECT_ATOM (M, 2u , 2u );
1508+ EXPECT_ATOM (M, /* AtomGroup */ 2u , /* AtomRank */ 2u );
14991509 EXPECT_EQ (M, DILocation::getMergedLocation (B, A));
15001510 }
15011511
15021512 // Identical but equal atom rank (different atom) - choose the lowest non-zero
15031513 // group (arbitrary choice for deterministic behaviour).
15041514 {
1505- auto *A = DILocation::get (Context, 2 , 7 , N, nullptr , false , 1 , 1 );
1506- auto *B = DILocation::get (Context, 2 , 7 , N, nullptr , false , 2 , 1 );
1515+ auto *A = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 1 ,
1516+ /* AtomRank*/ 1 );
1517+ auto *B = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 2 ,
1518+ /* AtomRank*/ 1 );
15071519 auto *M = DILocation::getMergedLocation (A, B);
15081520 EXPECT_ATOM (M, 1u , 1u );
15091521 EXPECT_EQ (M, DILocation::getMergedLocation (B, A));
15101522
1511- A = DILocation::get (Context, 2 , 7 , N, nullptr , false , 0 , 1 );
1512- B = DILocation::get (Context, 2 , 7 , N, nullptr , false , 2 , 1 );
1523+ A = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 0 ,
1524+ /* AtomRank*/ 1 );
1525+ B = DILocation::get (Context, 2 , 7 , N, nullptr , false , /* AtomGroup*/ 2 ,
1526+ /* AtomRank*/ 1 );
15131527 M = DILocation::getMergedLocation (A, B);
1514- EXPECT_ATOM (M, 2u , 1u );
1528+ EXPECT_ATOM (M, /* AtomGroup */ 2u , /* AtomRank */ 1u );
15151529 EXPECT_EQ (M, DILocation::getMergedLocation (B, A));
15161530 }
15171531
15181532 // Completely different except same atom numbers. Zero out the atoms.
15191533 {
15201534 auto *I = DILocation::get (Context, 2 , 7 , N);
1521- auto *A = DILocation::get (Context, 1 , 6 , S, I, false , 1 , 1 );
1522- auto *B =
1523- DILocation::get (Context, 2 , 7 , getSubprogram (), nullptr , false , 1 , 1 );
1535+ auto *A = DILocation::get (Context, 1 , 6 , S, I, false , /* AtomGroup*/ 1 ,
1536+ /* AtomRank*/ 1 );
1537+ auto *B = DILocation::get (Context, 2 , 7 , getSubprogram (), nullptr , false ,
1538+ /* AtomGroup*/ 1 , /* AtomRank*/ 1 );
15241539 auto *M = DILocation::getMergedLocation (A, B);
15251540 EXPECT_EQ (0u , M->getLine ());
15261541 EXPECT_EQ (0u , M->getColumn ());
@@ -1534,16 +1549,20 @@ TEST_F(DILocationTest, Merge) {
15341549 {
15351550 auto *I = DILocation::get (Context, 1 , 7 , N);
15361551 auto *F = getSubprogram ();
1537- auto *A = DILocation::get (Context, 1 , 1 , F, I, false , 1 , 2 );
1538- auto *B = DILocation::get (Context, 1 , 1 , F, I, false , 2 , 1 );
1552+ auto *A = DILocation::get (Context, 1 , 1 , F, I, false , /* AtomGroup*/ 1 ,
1553+ /* AtomRank*/ 2 );
1554+ auto *B = DILocation::get (Context, 1 , 1 , F, I, false , /* AtomGroup*/ 2 ,
1555+ /* AtomRank*/ 1 );
15391556 auto *M = DILocation::getMergedLocation (A, B);
1540- EXPECT_ATOM (M, 2u , 1u );
1557+ EXPECT_ATOM (M, 2u , /* AtomRank */ 1u );
15411558 EXPECT_EQ (M, DILocation::getMergedLocation (B, A));
15421559
1543- A = DILocation::get (Context, 1 , 1 , F, I, false , 1 , 2 );
1544- B = DILocation::get (Context, 1 , 1 , F, I, false , 2 , 0 );
1560+ A = DILocation::get (Context, 1 , 1 , F, I, false , /* AtomGroup*/ 1 ,
1561+ /* AtomRank*/ 2 );
1562+ B = DILocation::get (Context, 1 , 1 , F, I, false , /* AtomGroup*/ 2 ,
1563+ /* AtomRank*/ 0 );
15451564 M = DILocation::getMergedLocation (A, B);
1546- EXPECT_ATOM (M, 1u , 2u );
1565+ EXPECT_ATOM (M, /* AtomGroup */ 1u , /* AtomRank */ 2u );
15471566 EXPECT_EQ (M, DILocation::getMergedLocation (B, A));
15481567 }
15491568
@@ -1559,24 +1578,25 @@ TEST_F(DILocationTest, Merge) {
15591578 auto *FY = getSubprogram ();
15601579 auto *FZ = getSubprogram ();
15611580 auto *Z4 = DILocation::get (Context, 1 , 4 , FZ);
1562- auto *Y3IntoZ4 = DILocation::get (Context, 1 , 3 , FY, Z4, false , 1 , 1 );
1581+ auto *Y3IntoZ4 = DILocation::get (Context, 1 , 3 , FY, Z4, false ,
1582+ /* AtomGroup*/ 1 , /* AtomRank*/ 1 );
15631583 auto *Y2IntoZ4 = DILocation::get (Context, 1 , 2 , FY, Z4);
15641584 auto *X1IntoY2 = DILocation::get (Context, 1 , 1 , FX, Y2IntoZ4);
15651585 auto *M = DILocation::getMergedLocation (X1IntoY2, Y3IntoZ4);
15661586 EXPECT_EQ (M->getScope (), FY);
15671587 EXPECT_EQ (M->getInlinedAt ()->getScope (), FZ);
1568- EXPECT_ATOM (M, 2u , 1u );
1588+ EXPECT_ATOM (M, /* AtomGroup */ 2u , /* AtomRank */ 1u );
15691589
15701590 // This swapped merge will produce a new atom group too.
15711591 M = DILocation::getMergedLocation (Y3IntoZ4, X1IntoY2);
15721592
15731593 // Same again, even if the atom numbers match.
1574- auto *X1IntoY2SameAtom =
1575- DILocation::get (Context, 1 , 1 , FX, Y2IntoZ4, false , 1 , 1 );
1594+ auto *X1IntoY2SameAtom = DILocation::get (Context, 1 , 1 , FX, Y2IntoZ4, false ,
1595+ /* AtomGroup */ 1 , /* AtomRank */ 1 );
15761596 M = DILocation::getMergedLocation (X1IntoY2SameAtom, Y3IntoZ4);
1577- EXPECT_ATOM (M, 4u , 1u );
1597+ EXPECT_ATOM (M, /* AtomGroup */ 4u , /* AtomRank */ 1u );
15781598 M = DILocation::getMergedLocation (Y3IntoZ4, X1IntoY2SameAtom);
1579- EXPECT_ATOM (M, 5u , 1u );
1599+ EXPECT_ATOM (M, /* AtomGroup */ 5u , /* AtomRank */ 1u );
15801600 }
15811601#undef EXPECT_ATOM
15821602}
0 commit comments