test.cpp revision 12855
111375Sandreas.hansson@arm.com/***************************************************************************** 212345Snikos.nikoleris@arm.com 311375Sandreas.hansson@arm.com Licensed to Accellera Systems Initiative Inc. (Accellera) under one or 411375Sandreas.hansson@arm.com more contributor license agreements. See the NOTICE file distributed 511375Sandreas.hansson@arm.com with this work for additional information regarding copyright ownership. 611375Sandreas.hansson@arm.com Accellera licenses this file to you under the Apache License, Version 2.0 711375Sandreas.hansson@arm.com (the "License"); you may not use this file except in compliance with the 811375Sandreas.hansson@arm.com License. You may obtain a copy of the License at 911375Sandreas.hansson@arm.com 1011375Sandreas.hansson@arm.com http://www.apache.org/licenses/LICENSE-2.0 1111375Sandreas.hansson@arm.com 1211375Sandreas.hansson@arm.com Unless required by applicable law or agreed to in writing, software 1311375Sandreas.hansson@arm.com distributed under the License is distributed on an "AS IS" BASIS, 1411375Sandreas.hansson@arm.com WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 1511375Sandreas.hansson@arm.com implied. See the License for the specific language governing 1611375Sandreas.hansson@arm.com permissions and limitations under the License. 1711375Sandreas.hansson@arm.com 1811375Sandreas.hansson@arm.com *****************************************************************************/ 1911375Sandreas.hansson@arm.com 2011375Sandreas.hansson@arm.com/***************************************************************************** 2111375Sandreas.hansson@arm.com 2211375Sandreas.hansson@arm.com test.cpp -- 2311375Sandreas.hansson@arm.com 2411375Sandreas.hansson@arm.com Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15 2511375Sandreas.hansson@arm.com 2611375Sandreas.hansson@arm.com *****************************************************************************/ 2711375Sandreas.hansson@arm.com 2811375Sandreas.hansson@arm.com/***************************************************************************** 2911375Sandreas.hansson@arm.com 3011375Sandreas.hansson@arm.com MODIFICATION LOG - modifiers, enter your name, affiliation, date and 3111375Sandreas.hansson@arm.com changes you are making here. 3211375Sandreas.hansson@arm.com 3311375Sandreas.hansson@arm.com Name, Affiliation, Date: 3411375Sandreas.hansson@arm.com Description of Modification: 3511375Sandreas.hansson@arm.com 3611375Sandreas.hansson@arm.com *****************************************************************************/ 3711375Sandreas.hansson@arm.com 3811375Sandreas.hansson@arm.com/* 3911375Sandreas.hansson@arm.comDec/6/01 ulrich 4011375Sandreas.hansson@arm.com 4111375Sandreas.hansson@arm.comComparison of bit-slices of sc_int and sc_uint vectors 4211375Sandreas.hansson@arm.comdoes not work due to ambiguity. See example below. 4311375Sandreas.hansson@arm.comIt does work with sc_bigint, however. 4411375Sandreas.hansson@arm.com*/ 4511375Sandreas.hansson@arm.com 4611375Sandreas.hansson@arm.com#include <systemc.h> 4711375Sandreas.hansson@arm.com 4811375Sandreas.hansson@arm.comint sc_main(int, char**) 4911375Sandreas.hansson@arm.com{ 5011375Sandreas.hansson@arm.com { 5111375Sandreas.hansson@arm.com // sc_biguint<32> a,b; 5211375Sandreas.hansson@arm.com sc_uint<32> a,b; 5311375Sandreas.hansson@arm.com a=15; 5411375Sandreas.hansson@arm.com b=45; 5511375Sandreas.hansson@arm.com 5611375Sandreas.hansson@arm.com cout << (a.range(5,2) < b.range(5,2)) << "\n"; 5711375Sandreas.hansson@arm.com cout << (a.range(5,2) <= b.range(5,2)) << "\n"; 5812334Sgabeblack@google.com cout << (a.range(5,2) > b.range(5,2)) << "\n"; 5911375Sandreas.hansson@arm.com cout << (a.range(5,2) >= b.range(5,2)) << "\n"; 6011375Sandreas.hansson@arm.com } 6111375Sandreas.hansson@arm.com 6211375Sandreas.hansson@arm.com { 6311375Sandreas.hansson@arm.com // sc_bigint<32> a,b; 6411375Sandreas.hansson@arm.com sc_int<32> a,b; 6511375Sandreas.hansson@arm.com a=15; 6611375Sandreas.hansson@arm.com b=45; 6711375Sandreas.hansson@arm.com 6811375Sandreas.hansson@arm.com cout << (a.range(5,2) < b.range(5,2)) << "\n"; 6911375Sandreas.hansson@arm.com cout << (a.range(5,2) <= b.range(5,2)) << "\n"; 7011375Sandreas.hansson@arm.com cout << (a.range(5,2) > b.range(5,2)) << "\n"; 7111375Sandreas.hansson@arm.com cout << (a.range(5,2) >= b.range(5,2)) << "\n"; 7211375Sandreas.hansson@arm.com } 7311375Sandreas.hansson@arm.com 7411375Sandreas.hansson@arm.com return 0; 7511375Sandreas.hansson@arm.com} 7611375Sandreas.hansson@arm.com