@@ -449,7 +449,7 @@ static void clampReturnedValueStates(Attributor &A, const AAType &QueryingAA,
449
449
const AAType &AA = A.getAAFor <AAType>(QueryingAA, RVPos);
450
450
LLVM_DEBUG (dbgs () << " [Attributor] RV: " << RV << " AA: " << AA.getAsStr ()
451
451
<< " @ " << RVPos << " \n " );
452
- const StateType &AAS = static_cast < const StateType &>( AA.getState () );
452
+ const StateType &AAS = AA.getState ();
453
453
if (T.hasValue ())
454
454
*T &= AAS;
455
455
else
@@ -511,7 +511,7 @@ static void clampCallSiteArgumentStates(Attributor &A, const AAType &QueryingAA,
511
511
const AAType &AA = A.getAAFor <AAType>(QueryingAA, ACSArgPos);
512
512
LLVM_DEBUG (dbgs () << " [Attributor] ACS: " << *ACS.getInstruction ()
513
513
<< " AA: " << AA.getAsStr () << " @" << ACSArgPos << " \n " );
514
- const StateType &AAS = static_cast < const StateType &>( AA.getState () );
514
+ const StateType &AAS = AA.getState ();
515
515
if (T.hasValue ())
516
516
*T &= AAS;
517
517
else
@@ -568,8 +568,7 @@ struct AACallSiteReturnedFromReturned : public BaseType {
568
568
569
569
IRPosition FnPos = IRPosition::returned (*AssociatedFunction);
570
570
const AAType &AA = A.getAAFor <AAType>(*this , FnPos);
571
- return clampStateAndIndicateChange (
572
- S, static_cast <const StateType &>(AA.getState ()));
571
+ return clampStateAndIndicateChange (S, AA.getState ());
573
572
}
574
573
};
575
574
@@ -749,9 +748,7 @@ struct AANoUnwindCallSite final : AANoUnwindImpl {
749
748
Function *F = getAssociatedFunction ();
750
749
const IRPosition &FnPos = IRPosition::function (*F);
751
750
auto &FnAA = A.getAAFor <AANoUnwind>(*this , FnPos);
752
- return clampStateAndIndicateChange (
753
- getState (),
754
- static_cast <const AANoUnwind::StateType &>(FnAA.getState ()));
751
+ return clampStateAndIndicateChange (getState (), FnAA.getState ());
755
752
}
756
753
757
754
// / See AbstractAttribute::trackStatistics()
@@ -1401,8 +1398,7 @@ struct AANoSyncCallSite final : AANoSyncImpl {
1401
1398
Function *F = getAssociatedFunction ();
1402
1399
const IRPosition &FnPos = IRPosition::function (*F);
1403
1400
auto &FnAA = A.getAAFor <AANoSync>(*this , FnPos);
1404
- return clampStateAndIndicateChange (
1405
- getState (), static_cast <const AANoSync::StateType &>(FnAA.getState ()));
1401
+ return clampStateAndIndicateChange (getState (), FnAA.getState ());
1406
1402
}
1407
1403
1408
1404
// / See AbstractAttribute::trackStatistics()
@@ -1467,8 +1463,7 @@ struct AANoFreeCallSite final : AANoFreeImpl {
1467
1463
Function *F = getAssociatedFunction ();
1468
1464
const IRPosition &FnPos = IRPosition::function (*F);
1469
1465
auto &FnAA = A.getAAFor <AANoFree>(*this , FnPos);
1470
- return clampStateAndIndicateChange (
1471
- getState (), static_cast <const AANoFree::StateType &>(FnAA.getState ()));
1466
+ return clampStateAndIndicateChange (getState (), FnAA.getState ());
1472
1467
}
1473
1468
1474
1469
// / See AbstractAttribute::trackStatistics()
@@ -1550,8 +1545,7 @@ struct AANoFreeCallSiteArgument final : AANoFreeFloating {
1550
1545
return indicatePessimisticFixpoint ();
1551
1546
const IRPosition &ArgPos = IRPosition::argument (*Arg);
1552
1547
auto &ArgAA = A.getAAFor <AANoFree>(*this , ArgPos);
1553
- return clampStateAndIndicateChange (
1554
- getState (), static_cast <const AANoFree::StateType &>(ArgAA.getState ()));
1548
+ return clampStateAndIndicateChange (getState (), ArgAA.getState ());
1555
1549
}
1556
1550
1557
1551
// / See AbstractAttribute::trackStatistics()
@@ -1769,8 +1763,7 @@ struct AANonNullFloating : public AANonNullImpl {
1769
1763
T.indicatePessimisticFixpoint ();
1770
1764
} else {
1771
1765
// Use abstract attribute information.
1772
- const AANonNull::StateType &NS =
1773
- static_cast <const AANonNull::StateType &>(AA.getState ());
1766
+ const AANonNull::StateType &NS = AA.getState ();
1774
1767
T ^= NS;
1775
1768
}
1776
1769
return T.isValidState ();
@@ -1924,9 +1917,7 @@ struct AANoRecurseCallSite final : AANoRecurseImpl {
1924
1917
Function *F = getAssociatedFunction ();
1925
1918
const IRPosition &FnPos = IRPosition::function (*F);
1926
1919
auto &FnAA = A.getAAFor <AANoRecurse>(*this , FnPos);
1927
- return clampStateAndIndicateChange (
1928
- getState (),
1929
- static_cast <const AANoRecurse::StateType &>(FnAA.getState ()));
1920
+ return clampStateAndIndicateChange (getState (), FnAA.getState ());
1930
1921
}
1931
1922
1932
1923
// / See AbstractAttribute::trackStatistics()
@@ -2339,9 +2330,7 @@ struct AAWillReturnCallSite final : AAWillReturnImpl {
2339
2330
Function *F = getAssociatedFunction ();
2340
2331
const IRPosition &FnPos = IRPosition::function (*F);
2341
2332
auto &FnAA = A.getAAFor <AAWillReturn>(*this , FnPos);
2342
- return clampStateAndIndicateChange (
2343
- getState (),
2344
- static_cast <const AAWillReturn::StateType &>(FnAA.getState ()));
2333
+ return clampStateAndIndicateChange (getState (), FnAA.getState ());
2345
2334
}
2346
2335
2347
2336
// / See AbstractAttribute::trackStatistics()
@@ -2735,8 +2724,7 @@ struct AANoAliasCallSiteReturned final : AANoAliasImpl {
2735
2724
Function *F = getAssociatedFunction ();
2736
2725
const IRPosition &FnPos = IRPosition::returned (*F);
2737
2726
auto &FnAA = A.getAAFor <AANoAlias>(*this , FnPos);
2738
- return clampStateAndIndicateChange (
2739
- getState (), static_cast <const AANoAlias::StateType &>(FnAA.getState ()));
2727
+ return clampStateAndIndicateChange (getState (), FnAA.getState ());
2740
2728
}
2741
2729
2742
2730
// / See AbstractAttribute::trackStatistics()
@@ -2926,8 +2914,7 @@ struct AAIsDeadCallSiteArgument : public AAIsDeadValueImpl {
2926
2914
return indicatePessimisticFixpoint ();
2927
2915
const IRPosition &ArgPos = IRPosition::argument (*Arg);
2928
2916
auto &ArgAA = A.getAAFor <AAIsDead>(*this , ArgPos);
2929
- return clampStateAndIndicateChange (
2930
- getState (), static_cast <const AAIsDead::StateType &>(ArgAA.getState ()));
2917
+ return clampStateAndIndicateChange (getState (), ArgAA.getState ());
2931
2918
}
2932
2919
2933
2920
// / See AbstractAttribute::manifest(...).
@@ -3547,7 +3534,7 @@ struct AADereferenceableFloating : AADereferenceableImpl {
3547
3534
DerefBytes = Base->getPointerDereferenceableBytes (DL, CanBeNull);
3548
3535
T.GlobalState .indicatePessimisticFixpoint ();
3549
3536
} else {
3550
- const DerefState &DS = static_cast < const DerefState &>( AA.getState () );
3537
+ const DerefState &DS = AA.getState ();
3551
3538
DerefBytes = DS.DerefBytesState .getAssumed ();
3552
3539
T.GlobalState &= DS.GlobalState ;
3553
3540
}
@@ -3829,8 +3816,7 @@ struct AAAlignFloating : AAAlignImpl {
3829
3816
T.indicatePessimisticFixpoint ();
3830
3817
} else {
3831
3818
// Use abstract attribute information.
3832
- const AAAlign::StateType &DS =
3833
- static_cast <const AAAlign::StateType &>(AA.getState ());
3819
+ const AAAlign::StateType &DS = AA.getState ();
3834
3820
T ^= DS;
3835
3821
}
3836
3822
return T.isValidState ();
@@ -3985,9 +3971,7 @@ struct AANoReturnCallSite final : AANoReturnImpl {
3985
3971
Function *F = getAssociatedFunction ();
3986
3972
const IRPosition &FnPos = IRPosition::function (*F);
3987
3973
auto &FnAA = A.getAAFor <AANoReturn>(*this , FnPos);
3988
- return clampStateAndIndicateChange (
3989
- getState (),
3990
- static_cast <const AANoReturn::StateType &>(FnAA.getState ()));
3974
+ return clampStateAndIndicateChange (getState (), FnAA.getState ());
3991
3975
}
3992
3976
3993
3977
// / See AbstractAttribute::trackStatistics()
@@ -4374,9 +4358,7 @@ struct AANoCaptureCallSiteArgument final : AANoCaptureImpl {
4374
4358
return indicatePessimisticFixpoint ();
4375
4359
const IRPosition &ArgPos = IRPosition::argument (*Arg);
4376
4360
auto &ArgAA = A.getAAFor <AANoCapture>(*this , ArgPos);
4377
- return clampStateAndIndicateChange (
4378
- getState (),
4379
- static_cast <const AANoCapture::StateType &>(ArgAA.getState ()));
4361
+ return clampStateAndIndicateChange (getState (), ArgAA.getState ());
4380
4362
}
4381
4363
4382
4364
// / See AbstractAttribute::trackStatistics()
@@ -5880,9 +5862,7 @@ struct AAMemoryBehaviorCallSiteArgument final : AAMemoryBehaviorArgument {
5880
5862
Argument *Arg = getAssociatedArgument ();
5881
5863
const IRPosition &ArgPos = IRPosition::argument (*Arg);
5882
5864
auto &ArgAA = A.getAAFor <AAMemoryBehavior>(*this , ArgPos);
5883
- return clampStateAndIndicateChange (
5884
- getState (),
5885
- static_cast <const AAMemoryBehavior::StateType &>(ArgAA.getState ()));
5865
+ return clampStateAndIndicateChange (getState (), ArgAA.getState ());
5886
5866
}
5887
5867
5888
5868
// / See AbstractAttribute::trackStatistics()
@@ -5965,9 +5945,7 @@ struct AAMemoryBehaviorCallSite final : AAMemoryBehaviorImpl {
5965
5945
Function *F = getAssociatedFunction ();
5966
5946
const IRPosition &FnPos = IRPosition::function (*F);
5967
5947
auto &FnAA = A.getAAFor <AAMemoryBehavior>(*this , FnPos);
5968
- return clampStateAndIndicateChange (
5969
- getState (),
5970
- static_cast <const AAMemoryBehavior::StateType &>(FnAA.getState ()));
5948
+ return clampStateAndIndicateChange (getState (), FnAA.getState ());
5971
5949
}
5972
5950
5973
5951
// / See AbstractAttribute::trackStatistics()
0 commit comments