From 9226a9d55e108c7c25903cba56e47424186b37ce Mon Sep 17 00:00:00 2001 From: aoliva Date: Thu, 20 Mar 2003 02:30:42 +0000 Subject: [PATCH] * config/cpu/mips/atomicity.h (__exchange_and_add, __atomic_add): Only .set mips2 for the o32 ABI. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@64604 138bc75d-0d04-0410-961f-82ee72b054a4 --- libstdc++-v3/ChangeLog | 5 +++++ libstdc++-v3/config/cpu/mips/atomicity.h | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 13a6576e05b..1d7d2d84aef 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2003-03-19 Alexandre Oliva + + * config/cpu/mips/atomicity.h (__exchange_and_add, __atomic_add): + Only .set mips2 for the o32 ABI. + 2003-03-19 Paolo Carlini * testsuite/21_strings/char_traits/requirements/char/1.cc: diff --git a/libstdc++-v3/config/cpu/mips/atomicity.h b/libstdc++-v3/config/cpu/mips/atomicity.h index 447355b7a6d..098d06309ac 100644 --- a/libstdc++-v3/config/cpu/mips/atomicity.h +++ b/libstdc++-v3/config/cpu/mips/atomicity.h @@ -1,6 +1,6 @@ // Low-level functions for atomic operations. -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -42,7 +42,9 @@ __exchange_and_add (volatile _Atomic_word *__mem, int __val) ("/* Inline exchange & add */\n\t" "1:\n\t" ".set push\n\t" +#if _MIPS_SIM == _MIPS_SIM_ABI32 ".set mips2\n\t" +#endif "ll %0,%3\n\t" "addu %1,%4,%0\n\t" "sc %1,%2\n\t" @@ -66,7 +68,9 @@ __atomic_add (volatile _Atomic_word *__mem, int __val) ("/* Inline atomic add */\n\t" "1:\n\t" ".set push\n\t" +#if _MIPS_SIM == _MIPS_SIM_ABI32 ".set mips2\n\t" +#endif "ll %0,%2\n\t" "addu %0,%3,%0\n\t" "sc %0,%1\n\t" -- 2.11.0