Lines Matching refs:origin
151 U4 origin = __msan_get_origin(&x); in TrackingOrigins() local
153 return __msan_origin_is_descendant_or_same(origin, 0x1234); in TrackingOrigins()
156 #define EXPECT_ORIGIN(expected, origin) \ argument
157 EXPECT_TRUE(__msan_origin_is_descendant_or_same((origin), (expected)))
166 #define EXPECT_UMR_O(action, origin) \ argument
171 if (TrackingOrigins()) EXPECT_ORIGIN(origin, __msan_get_umr_origin()); \
181 #define EXPECT_POISONED_O(x, origin) \ argument
182 ExpectPoisonedWithOrigin(x, origin)
185 void ExpectPoisonedWithOrigin(const T& t, unsigned origin) { in ExpectPoisonedWithOrigin() argument
187 if (TrackingOrigins()) EXPECT_ORIGIN(origin, __msan_get_origin((void *)&t)); in ExpectPoisonedWithOrigin()
213 T *GetPoisonedO(int i, U4 origin, T val = 0) { in GetPoisonedO() argument
217 __msan_set_origin(&poisoned_array[i], sizeof(T), origin); in GetPoisonedO()
3888 U4 origin = __LINE__; in TEST() local
3889 __msan_set_origin(&x, sizeof(x), origin); in TEST()
3890 EXPECT_UMR_O(_mm_setcsr(x), origin); in TEST()
3910 U4 origin = __LINE__; in TEST() local
3912 __msan_set_origin(x + 4 * i, 4, origin + i); in TEST()
3915 EXPECT_POISONED_O(__sanitizer_unaligned_load16(x + 6), origin + 1); in TEST()
3916 EXPECT_POISONED_O(__sanitizer_unaligned_load16(x + 7), origin + 1); in TEST()
3920 EXPECT_POISONED_O(__sanitizer_unaligned_load16(x + 23), origin + 6); in TEST()
3921 EXPECT_POISONED_O(__sanitizer_unaligned_load16(x + 24), origin + 6); in TEST()
3923 EXPECT_POISONED_O(__sanitizer_unaligned_load32(x + 4), origin + 1); in TEST()
3924 EXPECT_POISONED_O(__sanitizer_unaligned_load32(x + 7), origin + 1); in TEST()
3928 EXPECT_POISONED_O(__sanitizer_unaligned_load32(x + 21), origin + 6); in TEST()
3929 EXPECT_POISONED_O(__sanitizer_unaligned_load32(x + 24), origin + 6); in TEST()
3931 EXPECT_POISONED_O(__sanitizer_unaligned_load64(x), origin); in TEST()
3932 EXPECT_POISONED_O(__sanitizer_unaligned_load64(x + 1), origin); in TEST()
3933 EXPECT_POISONED_O(__sanitizer_unaligned_load64(x + 7), origin + 1); in TEST()
3937 EXPECT_POISONED_O(__sanitizer_unaligned_load64(x + 17), origin + 6); in TEST()
3938 EXPECT_POISONED_O(__sanitizer_unaligned_load64(x + 21), origin + 6); in TEST()
3939 EXPECT_POISONED_O(__sanitizer_unaligned_load64(x + 24), origin + 6); in TEST()
3945 U4 origin = __LINE__; in TEST() local
3947 __msan_set_origin(&y2, 1, origin); in TEST()
3950 EXPECT_POISONED_O(x[0], origin); in TEST()
3951 EXPECT_POISONED_O(x[1], origin); in TEST()
3953 EXPECT_POISONED_O(x[3], origin); in TEST()
3959 U4 origin = __LINE__; in TEST() local
3961 __msan_set_origin(&y4, 2, origin); in TEST()
3964 EXPECT_POISONED_O(x[0], origin); in TEST()
3965 EXPECT_POISONED_O(x[1], origin); in TEST()
3966 EXPECT_POISONED_O(x[2], origin); in TEST()
3967 EXPECT_POISONED_O(x[3], origin); in TEST()
3968 EXPECT_POISONED_O(x[4], origin); in TEST()
3971 EXPECT_POISONED_O(x[7], origin); in TEST()
3977 U4 origin = __LINE__; in TEST() local
3980 __msan_set_origin(&y8, 8, origin); in TEST()
3983 EXPECT_POISONED_O(x[0], origin); in TEST()
3984 EXPECT_POISONED_O(x[1], origin); in TEST()
3985 EXPECT_POISONED_O(x[2], origin); in TEST()
3986 EXPECT_POISONED_O(x[3], origin); in TEST()
3987 EXPECT_POISONED_O(x[4], origin); in TEST()
3988 EXPECT_POISONED_O(x[5], origin); in TEST()
3992 EXPECT_POISONED_O(x[9], origin); in TEST()
3994 EXPECT_POISONED_O(x[11], origin); in TEST()
4332 U4 origin = rand(); in TEST() local
4333 s.a = *GetPoisonedO<U2>(0, origin); in TEST()
4334 EXPECT_ORIGIN(origin, __msan_get_origin(&s.a)); in TEST()
4335 EXPECT_ORIGIN(origin, __msan_get_origin(&s.b)); in TEST()
4338 EXPECT_ORIGIN(origin, __msan_get_origin(&s.a)); in TEST()
4339 EXPECT_ORIGIN(origin, __msan_get_origin(&s.b)); in TEST()
4353 U4 origin = __msan_get_origin(z); in BinaryOpOriginTest() local
4354 EXPECT_POISONED_O(*z, origin); in BinaryOpOriginTest()
4355 EXPECT_EQ(true, __msan_origin_is_descendant_or_same(origin, ox) || in BinaryOpOriginTest()
4356 __msan_origin_is_descendant_or_same(origin, oy)); in BinaryOpOriginTest()
4505 NOINLINE int RetvalOriginTest(U4 origin) { in RetvalOriginTest() argument
4508 __msan_set_origin(a, sizeof(*a), origin); in RetvalOriginTest()
4519 NOINLINE void ParamOriginTest(int param, U4 origin) { in ParamOriginTest() argument
4520 EXPECT_POISONED_O(param, origin); in ParamOriginTest()
4526 U4 origin = __LINE__; in TEST() local
4528 __msan_set_origin(a, sizeof(*a), origin); in TEST()
4529 ParamOriginTest(*a, origin); in TEST()
4544 U4 origin = __LINE__; in TEST() local
4545 __msan_set_origin(x, sizeof(x), origin); in TEST()
4546 EXPECT_UMR_O(volatile unsigned y = strlen(x), origin); in TEST()
4551 U4 origin = __LINE__; in TEST() local
4552 __msan_set_origin(w, sizeof(w), origin); in TEST()
4554 EXPECT_UMR_O(volatile unsigned y = wcslen(w), origin); in TEST()
4560 U4 origin = __LINE__; in TEST() local
4561 __msan_set_origin(&x, sizeof(x), origin); in TEST()
4564 EXPECT_POISONED_O(y, origin); in TEST()