private int A;
public int AA => A;
public int PA
{
get
{
return A;
}
}
public int GetA () => A;


.field private int32 A

  .method public hidebysig specialname instance int32

          get_AA() cil managed

  {

    // Code size       7 (0x7)

    .maxstack  8

    IL_0000:  ldarg.0

    IL_0001:  ldfld      int32 InlineTest.Animal::A

    IL_0006:  ret

  } // end of method Animal::get_AA


  .method public hidebysig specialname instance int32

          get_PA() cil managed

  {

    // Code size       7 (0x7)

    .maxstack  8

    IL_0000:  ldarg.0

    IL_0001:  ldfld      int32 InlineTest.Animal::A

    IL_0006:  ret

  } // end of method Animal::get_PA


  .method public hidebysig instance int32

          GetA() cil managed

  {

    // Code size       7 (0x7)

    .maxstack  8

    IL_0000:  ldarg.0

    IL_0001:  ldfld      int32 InlineTest.Animal::A

    IL_0006:  ret

  } // end of method Animal::GetA



디버그 모드로 빌드 하면 get_PA에 쓰레기 명령어 몇개 생기긴 하던데 그정돈 JIT가 치워줄거고